DataGrid里面itemRenderer,里面的mx:Text控件显示总是错位,如何解决,困扰好久了
代码如下,也就是
<mx:Text height="100%" width="100%" id="txIssuedType" />内容有个时候显示不正常,经常显示错位,这一行的数据跑另外一行,有的时候干脆就不显示。。不知道什么原因,,好久了没有解决,难道是FLEX的bug,我的是FLEX3.
<mx:DataGridColumn dataField="issuedType" width="80" headerText="类别" labelFunction="disIssuedType"> <mx:itemRenderer> <mx:Component> <mx:HBox width="100%" verticalAlign="middle" height="100%" horizontalScrollPolicy="off" verticalScrollPolicy="off"> <mx:Text height="100%" width="100%" id="txIssuedType" /> <mx:Script> <![CDATA[ override public function set data(value:Object) : void { super.data = value; setStyle("color", "#000000"); setStyle("fontWeight", "bold"); setStyle("backgroundColor", ""); if (value.issuedType == "1"){ txIssuedType.text = "年度下达"; setStyle("backgroundColor", "0x06ff00"); }else if (value.issuedType == "2"){ txIssuedType.text = "年度追加"; setStyle("backgroundColor", "0xfcff00"); }else if (value.issuedType == "3"){ txIssuedType.text = "合计"; setStyle("backgroundColor", "0xff0000"); }else if (value.issuedType == "4"){ txIssuedType.text = "已使用"; }else{ txIssuedType.text = "结余"; } } ]]> </mx:Script> </mx:HBox> </mx:Component> </mx:itemRenderer> </mx:DataGridColumn>
中的column:DataGridColumn去掉。
方法改完private function disIssuedType(evt:event,item:Object): String
试试。
[解决办法]
把外层的hbox去掉应该就没问题了
[解决办法]