itemRenderersを使用して、画像とボタンのレンダラーで階層型の高度なデータグリッドを作成しました。
画像のリンクはこちら:-画像 添付の画像では、アイテムのレンダリングが適切に配置されていないことがわかります。私はこのブログからいくつかの更新を読み、アイテム レンダラー クラスを作成するためにスパーク レンダラーを適用しました。
s:MXAdvancedDataGridItemRenderer クラスを使用して itemrenderer を作成しました。ボタンレンダラークラスについては、以下のコードを確認してください:-
<s:layout>
<s:HorizontalLayout verticalAlign="middle" horizontalAlign="center" paddingLeft="6" paddingTop="0" paddingRight="6" paddingBottom="0"/>
</s:layout>
<fx:Declarations>
<!-- Place non-visual elements (e.g., services, value objects) here -->
</fx:Declarations>
<fx:Script>
<![CDATA[
import com.common.ImageLibrary;
import mx.controls.Alert;
import mx.resources.ResourceManager;
override public function set data(value:Object):void
{
super.data = value;
var showButton:String;
if(value.hasOwnProperty("Data_Transfer") )
{
showButton = value.Data_Transfer;
if (showButton == "Show_Button") {
startId.visible= true;
startId.includeInLayout= true;
abortId.visible= true;
abortId.includeInLayout= true;
imgStatus.visible=false;
lblStatus.visible= false;
imgStatus.includeInLayout= false;
lblStatus.includeInLayout= false;
}else {
startId.visible= false;
abortId.visible= false;
startId.includeInLayout= false;
abortId.includeInLayout= false;
imgStatus.includeInLayout= true;
lblStatus.includeInLayout= true;
lblStatus.text = "--";
}
}
}
]]>
</fx:Script>
<s:HGroup width="100%" gap="5" verticalAlign="middle" horizontalAlign="left" height="100%">
<!--<mx:Image id="imgStatus"/>
<s:Label id="lblStatus" textAlign="left" showTruncationTip="true" paddingTop="3"/>-->
<s:VGroup height="50%" verticalAlign="middle" horizontalAlign="center">
<s:Button label="Start" id="startId"/>
<s:Button label="Abort" id="abortId" />
</s:VGroup>
<s:HGroup height="100%">
<mx:Image id="imgStatus" includeInLayout="false"/>
<s:Label id="lblStatus" textAlign="left" showTruncationTip="true" paddingTop="3" />
</s:HGroup>
</s:HGroup>
`
レンダラーも正常に動作していません。親行にボタンを表示し、子行にラベルと画像を表示する必要があります。しかし、レンダラーは適切に機能していません。
この問題の解決策があれば教えてください。