我们知道,datagrid组件用来显示数据再好不过,但是如果我们想再datagrid中显示图像呢,显示影片剪辑呢?简单,
取得某一列你想要应用影片剪辑的,设置cellRenderer属性. MyCellRenderer为自定义的类,它继承CellRenderer.
这个只是最简单的应用。如果想让datagrid里面数据也应用到这个mc里面,则需要覆盖set data方法,方法如下
取得某一列你想要应用影片剪辑的,设置cellRenderer属性. MyCellRenderer为自定义的类,它继承CellRenderer.
datagrid.getColumnAt(1).cellRenderer = MyCellRenderer;
package{
import fl.controls.listClasses.CellRenderer;
import fl.controls.listClasses.ICellRenderer;
public class TCellRenderer extends CellRenderer implements ICellRenderer{
public function TCellRender(){
this.addChild(new MC()); //MC为你想添加的影片剪辑
}
}
}
这个只是最简单的应用。如果想让datagrid里面数据也应用到这个mc里面,则需要覆盖set data方法,方法如下
datagrid. columns = ["label", "data"];
datagrid.getColumnAt(1).cellRenderer = TCellRenderer; //对第二列应用渲染器TCellRenderer
package{
import fl.controls.listClasses.CellRenderer;
import fl.controls.listClasses.ICellRenderer;
public class TCellRenderer extends CellRenderer implements ICellRenderer{
public override function set data(d:Object):void{
_data = d;
addChild(new MC(d.data)); //MC为你想添加的影片剪辑
}
public override function get data():Object{
return _data;
}
}
}