6 apache-flex actionscript flex3 flex4
我有这个代码.我想在data grird的第二列中添加Buttons.
<mx:DataGrid width="100%" height="95%" id="id_variableRefList" >
<mx:columns>
<mx:DataGridColumn id="id_name" dataField=""/>
<mx:DataGridColumn id="id_strip" dataField="">
</mx:DataGridColumn>
</mx:columns>
</mx:DataGrid>
Run Code Online (Sandbox Code Playgroud)
如何使用ItemRenderer在第二列中添加按钮?
有很多方法可以做到这一点.
您可以像这样使用内联itemRenderer:
<fx:Script>
public function myButton_clickHandler(event:Event):void
{
Alert.show("My button was clicked!");
}
</fx:Script>
<mx:DataGrid width="100%" height="95%" id="id_variableRefList" >
<mx:columns>
<mx:DataGridColumn id="id_name" dataField=""/>
<mx:DataGridColumn id="id_strip" dataField="">
<mx:itemRenderer>
<fx:Component>
<mx:VBox>
<mx:Button label="My Button" click="outerDocument.myButton_clickHandler(event);" />
</mx:VBox>
</fx:Component>
</mx:itemRenderer>
</mx:DataGridColumn>
</mx:columns>
</mx:DataGrid>
Run Code Online (Sandbox Code Playgroud)
或者你可以创建一个自定义组件,并设置itemRenderer
属性的DataGridColumn
.
<mx:DataGrid width="100%" height="95%" id="id_variableRefList" >
<mx:columns>
<mx:DataGridColumn id="id_name" dataField=""/>
<mx:DataGridColumn id="id_strip" dataField="" itemRenderer="MyCustomItemRenderer"/>
</mx:columns>
</mx:DataGrid>
Run Code Online (Sandbox Code Playgroud)
更新:
要获取被单击的按钮的ID,您可以使用传递给您的currentTarget
属性.event
eventListener
public function myButton_clickHandler(event:Event):void
{
Alert.show("Button " + Button(event.currentTarget).id + " was clicked!");
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
9284 次 |
最近记录: |