fl.controls.listClasses
接口public interface ICellRenderer
实现器CellRenderer, DataGridCellEditor, ImageCell

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9.0.28.0

ICellRenderer 接口提供单元格渲染器需要的方法和属性。 所有用户定义单元格渲染器都应实现此接口。

查看示例

另请参见

CellRenderer



公共 属性
 属性定义方
  data : Object
获取或设置一个 Object,该 Object 表示与组件关联的数据。
ICellRenderer
  listData : ListData
获取或设置应用到单元格的列表属性,例如 index 和 selected 值。
ICellRenderer
  selected : Boolean
获取或设置一个布尔值,该值指示是否已选择当前单元格。
ICellRenderer
公共 方法
 方法定义方
  
将当前单元格设置为特定的鼠标状态。
ICellRenderer
  
setSize(width:Number, height:Number):void
根据由 width 和 height 参数指定的像素值设置数据的大小。
ICellRenderer
属性详细信息
data属性
data:Object  [read-write]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9.0.28.0

获取或设置一个 Object,该 Object 表示与组件关联的数据。 设置该值后,将存储组件数据并使包含组件变为无效。 然后,将自动重绘变为无效的组件。

数据属性表示一个对象,该对象包含单元格代表的 DataProvider 中的项目。 通常,数据属性根据组件类型包含标准属性。 在 CellRenderer 中的 List 或 ComboBox 组件中,数据包含标签、图标和数据属性;在 TileList 中包含标签和源属性;DataGrid 单元格包含每列的值。 数据属性还可以包含与特定单元格相关的用户指定的数据。 用户可以针对组件扩展 CellRenderer 以在呈现单元格时利用数据的不同属性。

此外,可以使用 labelFieldlabelFunctioniconFieldiconFunctionsourceFieldsourceFunction 元素指定分别使用哪些属性来绘制标签、图标和源。


实现
    public function get data():Object
    public function set data(value:Object):void
listData属性 
listData:ListData  [read-write]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9.0.28.0

获取或设置应用到单元格的列表属性,例如 indexselected 值。 单元格变为无效以后,这些列表属性会自动更新。


实现
    public function get listData():ListData
    public function set listData(value:ListData):void
selected属性 
selected:Boolean  [read-write]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9.0.28.0

获取或设置一个布尔值,该值指示是否已选择当前单元格。 true 值指示已选择当前单元格;false 值指示未选择当前单元格。


实现
    public function get selected():Boolean
    public function set selected(value:Boolean):void
方法详细信息
setMouseState()方法
public function setMouseState(state:String):void

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9.0.28.0

将当前单元格设置为特定的鼠标状态。 DataGrid 需要该方法来设置当用户与单个单元格交互时整行的鼠标状态。

参数

state:String — 一个字符串,用于指定鼠标状态,例如“up”或“over”。

setSize()方法 
public function setSize(width:Number, height:Number):void

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9.0.28.0

根据由 widthheight 参数指定的像素值设置数据的大小。

参数

width:Number — 单元格渲染器的显示宽度(以像素为单位)。
 
height:Number — 单元格渲染器的显示高度(以像素为单位)。

示例 如何使用示例

此示例通过实现 ICellRenderer 类创建自定义单元格渲染器。

若要运行该示例,请按照下列步骤操作:

  1. 将 List 和 Button 组件添加到库中。
  2. 将该代码作为 ICellRendererExample.as 另存到 FLA 文件所在的同一目录中。
  3. 将 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 另存到 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;
        }
    }
}




 

评论添加到页面后给我发送电子邮件 | 评论报告

当前页: http://livedocs.adobe.com/flash/9.0_cn/ActionScriptLangRefV3/fl/controls/listClasses/ICellRenderer.html