加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

FLEX itemRenderer 用于 DataGrid《二》

发布时间:2020-12-15 04:59:14 所属栏目:百科 来源:网络整理
导读:? 也可以将内联 itemRenderer 用于 DataGrid。以下是应用于列的一个示例: mx:DataGrid x="29" y="303" width="694" height="190" dataProvider="{testData.book}" variableRowHeight="true" mx:columns mx:DataGridColumn headerText="Pub Date" dataField="

?

也可以将内联 itemRenderer 用于 DataGrid。以下是应用于列的一个示例:

<mx:DataGrid x="29" y="303" width="694" height="190" dataProvider="{testData.book}" 
variableRowHeight="true"> 
    <mx:columns> 
        <mx:DataGridColumn headerText="Pub Date" dataField="date" width="85" /> 
        <mx:DataGridColumn headerText="Author" dataField="author" width="125"/> 
        <mx:DataGridColumn headerText="Title" dataField="title"> 
            <mx:itemRenderer> 
                <mx:Component> 
                    <mx:HBox paddingLeft="2"> 
                        <mx:Script> 
                        <![CDATA[ 
                            override public function set data( value:Object ) : void { 
                                super.data = value; 
                                var today:Number = (new Date()).time; 
                                var pubDate:Number = Date.parse(data.date); 
                                if( pubDate > today ) setStyle("backgroundColor",0xff99ff);
                                else setStyle("backgroundColor",0xffffff); 
                            } 
                        ]]> 
                        </mx:Script> 
                        <mx:Image source="{data.image}" width="50" height="50" scaleContent="true" /> 
                        <mx:Text width="100%" text="{data.title}" /> 
                    </mx:HBox> 
                </mx:Component> 
            </mx:itemRenderer> 
        </mx:DataGridColumn> 
    </mx:columns> 
</mx:DataGrid> 
如您所见,这次比前两个要复杂得多,但结构相同: <mx:itemRenderer> 包含一个 <mx:Component> 定义。 <mx:Component> 是为了提供一个 MXML 语法,用于在代码中创建一个 ActionScript 类。 想象一下,剪切 <mx:Component> 块中出现的代码并将它放入一个单独文件中并提供一个类名 称。当您查看内联 itemRenderer 时,它看上去就像一个完整的 MXML 文件,不是吗?有根标 记 (本例中为 <mx:HBox>),甚至 <mx:Script> 块。 本例中的 <mx:Script> 块用于覆盖 set data 函数,使得 itemRenderer 的背景色可以更 改。在本例中,无论书籍的未来出版数据为何时,背景将从白色更改为其他颜色。记住,itemRenderer 是循环使用的,所以如果测试失败,还必须将颜色设置回白色。否则,当用户滚 动列表时,所有 itemRenderer 最终将变为紫色。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读