包 | fl.controls.listClasses |
接口 | public interface ICellRenderer |
实现器 | CellRenderer, DataGridCellEditor, ImageCell |
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.0 |
相关 API 元素
公共属性
属性 | 由以下参数定义 | ||
---|---|---|---|
data : Object
获取或设置一个 Object,该 Object 表示与组件关联的数据。 | ICellRenderer | ||
listData : ListData
获取或设置应用到单元格的列表属性,例如 index 和 selected 值。 | ICellRenderer | ||
selected : Boolean
获取或设置一个布尔值,该值指示是否已选择当前单元格。 | ICellRenderer | ||
x : Number [只写]
设置单元格渲染器的 x 坐标
| ICellRenderer | ||
y : Number [只写]
设置单元格渲染器的 y 坐标
| ICellRenderer |
公共方法
方法 | 由以下参数定义 | ||
---|---|---|---|
将当前单元格设置为特定的鼠标状态。 | ICellRenderer | ||
根据由 width 和 height 参数指定的像素值设置数据的大小。 | ICellRenderer |
属性详细信息
data | 属性 |
data:Object
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.0 |
获取或设置一个 Object,该 Object 表示与组件关联的数据。 设置该值后,将存储组件数据并使包含组件变为无效。 然后,将自动重绘变为无效的组件。
数据属性表示一个对象,该对象包含单元格代表的 DataProvider 中的项目。 通常,数据属性根据组件类型包含标准属性。 在 CellRenderer 中的 List 或 ComboBox 组件中,数据包含标签、图标和数据属性;在 TileList 中包含标签和源属性;DataGrid 单元格包含每列的值。 数据属性还可以包含与特定单元格相关的用户指定的数据。 用户可以针对组件扩展 CellRenderer 以在呈现单元格时利用数据的不同属性。
此外,可以使用 labelField
、labelFunction
、iconField
、iconFunction
、sourceField
和 sourceFunction
元素指定分别使用哪些属性来绘制标签、图标和源。
实现
public function get data():Object
public function set data(value:Object):void
listData | 属性 |
selected | 属性 |
x | 属性 |
y | 属性 |
方法详细信息
setMouseState | () | 方法 |
setSize | () | 方法 |
示例 如何使用本示例
ICellRendererExample.as
此示例通过实现 ICellRenderer 类创建自定义单元格渲染器。
若要运行该示例,请按照下列步骤操作:
- 将 List 和 Button 组件添加到库中。
- 将该代码作为 ICellRendererExample.as 另存到 FLA 文件所在的同一目录中。
- 将 FLA 文件中的 Document 类设置为 ICellRendererExample。
package { import fl.controls.List; import fl.data.DataProvider; import fl.events.ListEvent; import flash.display.Sprite; import flash.events.Event; public class ICellRendererExample extends Sprite { public function ICellRendererExample() { var dp:DataProvider = new DataProvider(); var totalEntries:Number = 42; var i:Number; for(i=0; i<totalEntries; i++) { dp.addItem( { label:Math.random(), data:null } ); } var myList = new List(); myList.setSize(300,300); myList.move(10,10); myList.setStyle('cellRenderer', MyRenderer); myList.dataProvider = dp; addChild(myList); } } }
MyRenderer.as
将下面的代码作为 MyRenderer.as 另存到 FLA 文件所在的同一目录中:
package { import fl.controls.LabelButton; import fl.controls.listClasses.ICellRenderer; import fl.controls.listClasses.ListData; public class MyRenderer extends LabelButton implements ICellRenderer { private var _listData:ListData; private var _data:Object; public function MyRenderer() { } public function set listData(newListData:ListData):void { _listData = newListData; label = "Random: " + _listData.label; drawRandomColor(); } private function drawRandomColor():void { graphics.beginFill(Math.random()*0xFFFFFF); graphics.drawRect(0,0,20,20); graphics.endFill(); } public function get listData():ListData { return _listData; } public function set data(newData:Object):void { _data = newData; } public function get data():Object { return _data; } } }
Tue Jun 12 2018, 11:04 AM Z