-
checkbox in datagrid flash as3中把checkbox组件放入datagrid中2009-04-30
版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
http://crazyrabbit.blogbus.com/logs/38711416.html
昨天研究了UILloader组件放入datagrid中,今天把checkbox放进去,这才是我要的重点,呵呵,终于有成果了,也不算没白看,进入正题。
准备阶段,要保证datagrid和checkbox组件在fla的库中。
时间轴as如下
import fl.controls.DataGrid; import fl.controls.dataGridClasses.DataGridColumn; import fl.data.DataProvider; var dp:DataProvider = new DataProvider(); dp.addItem({data:"点击选择", title:"image1.jpg"}); dp.addItem({data:"点击选择", title:"image2.jpg"}); dp.addItem({data:"点击选择", title:"image3.jpg"}); dp.addItem({data:"点击选择", title:"Bear.jpg"}); dp.addItem({data:"点击选择", title:"Lion.jpg"}) var dataCol:DataGridColumn = new DataGridColumn("数据"); dataCol.cellRenderer = LoaderCellRenderer; var titleCol:DataGridColumn = new DataGridColumn("title"); var myDataGrid:DataGrid = new DataGrid(); myDataGrid.addColumn(dataCol); myDataGrid.addColumn(titleCol); myDataGrid.dataProvider = dp; myDataGrid.rowHeight = 64; myDataGrid.width = 200; myDataGrid.rowCount = dp.length - 1; myDataGrid.move(10, 10); addChild(myDataGrid);下面是LoaderCellRenderer.as类
package {
//导入所需要的类
import fl.controls.listClasses.ICellRenderer;
import fl.controls.listClasses.ListData;
import fl.core.InvalidationType;
import fl.data.DataProvider;
import flash.events.Event;
import fl.controls.CheckBox;
//LoaderCellRenderer 实现 ICellRenderer 接口
public class LoaderCellRenderer extends CheckBox implements ICellRenderer {
protected var _data:Object;
protected var _listData:ListData;
protected var _mySelected:Boolean;
public function LoaderCellRenderer():void {
super();
}
public function get data():Object {
return _data;
}
public function set data(value:Object):void {
_data = value;
//checkbox的文字
label = value.data;
}
public function get listData():ListData {
return _listData;
}
public function set listData(value:ListData):void {
_listData = value;
invalidate(InvalidationType.DATA);
invalidate(InvalidationType.STATE);
}
public function get select():Boolean {
return _mySelected;
}
public function set select(value:Boolean) :void {
_mySelected = value;
invalidate(InvalidationType.STATE);
}
public function setMouseStates(state:String):void {
}
}
}
随机文章:
学习AS3菜鸟起飞吧之—事件处理 转载 2009-12-16addFrameScript 未公开的方法 2009-08-25转载---------20个帮你掌握用户界面设计的网站 2008-11-17简单asp加载access数据库并生成XML文件范例 2008-10-17flash as3 数组的拷贝 2008-09-04
收藏到:Del.icio.us







