Apache flex datagrid Flex中的Flex align复选框
我使用一个项目渲染器在我的datagrid中显示一个复选框,就像Apache flex datagrid Flex中的Flex align复选框,apache-flex,datagrid,checkbox,flex4,Apache Flex,Datagrid,Checkbox,Flex4,我使用一个项目渲染器在我的datagrid中显示一个复选框,就像 <mx:DataGridColumn headerText="Visible" dataField="visibleInd" width="48" itemRenderer="mx.controls.CheckBox" rendererIsEditor="true" editorDataField="selected" /> 这很好,但是复选框是左对齐的 我如何在中间对齐? 我用过
<mx:DataGridColumn headerText="Visible" dataField="visibleInd" width="48"
itemRenderer="mx.controls.CheckBox"
rendererIsEditor="true"
editorDataField="selected"
/>
这很好,但是复选框是左对齐的
<>我如何在中间对齐?
我用过
<mx:DataGridColumn headerText="Visible" dataField="visibleInd" width="48"
editorDataField="selected"
>
<mx:itemRenderer>
<fx:Component>
<mx:Box width="100%" height="100%"
horizontalAlign="center" verticalAlign="middle">
<mx:CheckBox selected="{data.visibleInd}" />
</mx:Box>
</fx:Component>
</mx:itemRenderer>
但是,在这种情况下,我的代码确实在中间对齐复选框,但没有保存数据提供程序中的数据。
我遗漏了什么吗?我非常确定,将
mx:itemRenderer
更改为mx:itemEditor
,而不是使用
,使用
或
(在Flex 4中)
另外,在复选框上设置horizontalCenter=“0”
例如:
<mx:itemRenderer>
<mx:Component>
<mx:Canvas width="100%" height="100%">
<mx:CheckBox selected="{data.visibleInd}" horizontalCenter="0" />
</mx:Canvas>
</mx:Component>
</mx:itemRenderer>
尝试将复选框宽度设置为100%只需使用DataGridColumn的textAlign
样式:
<mx:DataGridColumn headerText="Visible" textAlign="center">
<mx:itemRenderer>
<mx:Component>
<mx:CheckBox selected="{data.visibleInd}"/>
</mx:Component>
</mx:itemRenderer>
</mx:DataGridColumn>
请使用下面的提示将复选框和图像放置在列的中心
<mx:CheckBox paddingLeft="20" />
<mx:Image horizontalAlign="center"/>
请参见:
<?xml version="1.0" encoding="utf-8"?>
<s:GridItemRenderer xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx">
<fx:Script>
<![CDATA[
override public function prepare(hasBeenRecycled:Boolean):void {
if(data != null){
chb.selected = data[column.dataField];
}
}
protected function chb_clickHandler(event:MouseEvent):void{
data[column.dataField] = !chb.selected;
}
]]>
</fx:Script>
<s:CheckBox id="chb" click="chb_clickHandler(event)" horizontalCenter="0" verticalCenter="0"/>
</s:GridItemRenderer>
下面我们为您提供了一些很好的答案,其中有为您工作的吗?如果是,为什么没有爱在Flex4下,这会导致显示“1”而不是复选框。诚然,“1”是居中的。但这并不是什么安慰,这没有任何作用。至少,它在Flex4下没有任何功能。