在flex 4中使用itemrenderer的分层高级数据网格

时间:2012-04-30 07:30:31

标签: actionscript-3 flex actionscript flex4 flex3

我使用itemRenderers使用图像和按钮渲染器完成了Hierarchical高级数据网格。

此处为图片链接: - Image   在附加的图像中,您可以看到项目渲染未正确对齐。我已阅读此博客的一些更新,并应用了火花渲染器来创建项目渲染器类。

我创建了itemrenderer uisng s:MXAdvancedDataGridItemRenderer 类。 请检查以下代码中的按钮渲染器类: -

<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>

`

并且渲染器也无法正常工作。我必须在父行中显示按钮,并在子行中显示标签和图像。但渲染器不能正常工作。

如果对此问题有任何解决方案,请告诉我。

0 个答案:

没有答案