由于工作需要,经常要使用flash里DataGrid组件(数据网格)。发现DG组件不想帮助里说的 通过数据绑定可以改善它的显示性能,反而使用DG.addItem(ob)速度回比较快。现制作了一个测试动画,大家可以看看是不是我得AS不合理的原因。
http://ppanyong.ik8.com/dataset.swf
代码如下:
[code]var timer = 0;
var times = 200;
//
function fullDS() {
var 开始:Date = new Date();
s = 开始.getTime();
for (i=0; i var temp_ob:Object = {flag:i, 消息主题:"消息", 发件人:"发件人", 日期:"日期", 消息长度:"消息长度"};
DS.addItem(temp_ob);
temp_ob = new Object();
}
DG.dataProvider = DS.dataProvider;
var 结束:Date = new Date();
e = 结束.getTime();
timer_txt.text = "dataProvider绑定用时 :"+(e-s)+"毫秒";
//trace("dataProvider绑定用时 :"+(e-s));
}
function fullDSBYItem() {
var 开始:Date = new Date();
s = 开始.getTime();
for (i=0; i var temp_ob:Object = {flag:i, 消息主题:"消息", 发件人:"发件人", 日期:"日期", 消息长度:"消息长度"};
DG.addItem(temp_ob);
temp_ob = new Object();
}
var 结束:Date = new Date();
e = 结束.getTime();
timer_txt.text = "直接添加用时 :"+(e-s)+"毫秒";
//trace("直接添加用时 :"+(e-s));
}
function Clear() {
DG.removeAll();
DG.removeAllColumns();
DS.removeAll();
var a:Array = new Array();
DG.dataProvider = a;
}
stop();
[/code]
大家可以试试。