FlexのAdvancedDataGridColumnGroupに含まれる特定のセル内のテキストの色を指定する方法は? コードはアクション スクリプトであり、テキストの色はセルに含まれる値によって異なります。つまり、負の値の場合は赤で表示する必要があり、そうでない場合は黒で表示する必要があります。
回避策もあれば言及してください!
ありがとう!
FlexのAdvancedDataGridColumnGroupに含まれる特定のセル内のテキストの色を指定する方法は? コードはアクション スクリプトであり、テキストの色はセルに含まれる値によって異なります。つまり、負の値の場合は赤で表示する必要があり、そうでない場合は黒で表示する必要があります。
回避策もあれば言及してください!
ありがとう!
あなたが説明する機能を使って例を示しました。願わくば、それが役立つでしょう。
<mx:AdvancedDataGrid id="grid"
itemRenderer="MyAdvancedDataGridItemRenderer"
dataProvider="{dataProvider}"
width="200" height="100%">
<mx:groupedColumns>
<mx:AdvancedDataGridColumn dataField="name"/>
<mx:AdvancedDataGridColumn dataField="score"/>
</mx:groupedColumns>
</mx:AdvancedDataGrid>
<mx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
[Bindable]
private var dataProvider:ArrayCollection = new ArrayCollection([
{name:"Name1", score:-12},
{name:"Name2", score:10},
{name:"Name3", score:-100},
]);
]]>
</mx:Script>
</mx:Application>
そして、クラスMyAdvancedDataGridItemRenderer.as:
package
{
import mx.controls.advancedDataGridClasses.AdvancedDataGridItemRenderer;
import mx.controls.advancedDataGridClasses.AdvancedDataGridListData;
public class MyAdvancedDataGridItemRenderer extends AdvancedDataGridItemRenderer
{
public function MyAdvancedDataGridItemRenderer()
{
super();
}
override public function validateProperties():void
{
super.validateProperties();
if (listData)
{
var item:Object = AdvancedDataGridListData(listData).item;
if (AdvancedDataGridListData(listData).dataField == "score") {
setStyle("color", item.score < 0 ? 0xff0000 : 0x000000);
}
}
}
}
}