您的位置:首页 > 移动开发 > Objective-C

Flex4在datagrid单元格中添加按钮/图片等丰富内容

2012-03-26 13:33 411 查看
1,添加按钮

<s:DataGrid width="100%" height="100%">
<
4000
;s:columns>
<s:GridColumn headerText="维护" >
<s:itemRenderer>
<fx:Component>
<s:GridItemRenderer>
<s:HGroup verticalAlign="middle" paddingBottom="5" paddingLeft="5" paddingRight="5" paddingTop="5">
<s:Button label="删除" width="50"/>
<s:Button id="modifyBtn" label="修改" width="50" click="outerDocument.modifyBtn_clickHandler(event)"/>
<s:Button label="查看" width="50"/>
</s:HGroup>
</s:GridItemRenderer>
</fx:Component>
</s:itemRenderer>
</s:GridColumn>
</s:columns>
</s:DataGrid>


单元格中的按钮单击事件调用时必须在方法前加上outerDocument,不然会找不到该方法。因为添加<fx:Component>标签相当于嵌入了一个页面。

2,有时需要根据单元格获得的数据以图表或者不同颜色来呈现,则要用到项呈示器

新建一个项呈示器



模版选择Spark DataGrid的项呈示器

<1>添加数据改变事件



<2>然后绘制你想要的图表或者一组css样式来填充单元格的背景

<3>

protected function itemrenderer1_dataChangeHandler(event:FlexEvent):void

{

             getChart(data);//data是GridItemRenderer的属性,也就是是单元格获得的数据,为Object类型

}

private function getChart(obj:Object)

{

            //这时就可用从data中获得的数据绑定到你的图表或者背景中了

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息