FLEX 甘特图 (gantt)
一共花了9天时间写出来,其中也停滞过
主要原因是效率问题,而重新构建,进行从新优化就用了2天,也总结了很多经验吧。
基本实现了 左边一颗表格树,当展开时候甘特图也展开,关闭时甘特图也关闭,而且横向进度可以左右移动,扩大缩小,连接线
也根据位置自动变换连接 当子进度移动或扩大时,父进度也跟着放大缩小移动,根据XML 文件配置整个甘特图,点击列头时候,
自动拉伸,由原来的年月,变为月日,里面的线段和进度条也自动变换。当左边上下移动时候右边也上下移动,根据XML传入的日期
甘特图可自动调整进度,总共大小600K,加载速度也是比较快了。
最开始使用FLEX 时候担心效率,在开发到一半时候果然出现问题,用了2天时间把速度从新构建优化,基本上展开一个有100个任务的节点
只用2秒左右,1000个任务,展开最多用10秒,对CPU没有占用太多资源,
最开始遇到效率问题时看过有人也跟我遇到了同样问题,不过我自己还是给解决了,其实病因,并不是FLEX 控件的问题,而是算法出现问题,导致速度变慢,虽然FLEX 控件确实占用了一部分资源但并不是有太大影响,主要慢的原因还是算法问题。
也希望大家给我提提宝贵意见!!!!
相关文档:
<?xml version="1.0" encoding="utf-8"?>
<!-- Simple example to demonstrate the DateTimeAxis class. -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">
<mx:Script>
import mx.collections.ArrayCollection;
......
/**
* @author:ycccc8202
* @用途:注册事件进行传递参数的代理类
* @date:2007.8.26
* @example:
* import com.ycccc.utils.JEventDelegate
stage.addEventListener(MouseEvent.MOUSE_DOWN,JEventDelegate.create(mouseDownHandler,"a","b"));
function mouseDownHandler(e:MouseEvent,...arg) {
trace(e)
......
<?xml version="1.0"?>
<!-- charts/StandardEffectTriggers.mxml -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
creationComplete="init()">
<mx:Script>
<!--[CDATA[
import mx.collections.ArrayCollection;
import mx ......
http://www.zhuoqun.net/html/y2008/1042.html加载图片
http://www.millionclouds.com/浏览图片
http://www.scion.com/#home卖车
http://labs.newmediateam.com/pizzastore/customerview/卖披萨
http://www.sumo.fi/flash/sumopaint/线图片编辑器
http://www.prettyloaded.com/各种预加载效果
http://www.adobecards. ......