Adobe Flex数据宽度问题

问题描述 投票:0回答:1

我有一个.mxml文件,其中包含以下Panel

                            <s:Panel width="130%" height="100%" title="Results {noOfRowsText}">
                            <s:layout>
                                    <s:VerticalLayout paddingTop="5" paddingLeft="5" paddingBottom="5" paddingRight="5"/>
                            </s:layout>                                     
                            <mx:DataGrid id="desResults" width="100%" height="100%" dataProvider="{response.sList}"
                                         visible="{response != null &amp;&amp; response.sList != null &amp;&amp; response.sList.length != 0}"
                                         itemClick="datagrid_itemClickHandler(event)">
                                    <mx:columns>
                                            <mx:DataGridColumn headerText="Start Date" dataField="sVaRWindowStartDate"
                                                               itemRenderer="com.vanilla.package.class"/>
                                            <mx:DataGridColumn headerText="End Date" dataField="sVaRWindowEndDate"
                                                               itemRenderer="com.vanilla.package.class"/>
                                            <mx:DataGridColumn headerText="Value" dataField="Value" textAlign="left"
                                                               itemRenderer="com.vanilla.package.classOne"/>
                                            <mx:DataGridColumn headerText="Description" dataField="description" textAlign="right"
                                                               itemRenderer="com.vanilla.package.classOne"/>
                                    </mx:columns>
                            </mx:DataGrid>                                      
                    </s:Panel>                                         
      <s:Panel id="panelLsR" width="60%" height="100%" includeIn="lsr" title="LsR Details">
               <s:layout>
                  <s:VerticalLayout horizontalAlign="left" 
                     verticalAlign="top" paddingTop="5" 
                     paddingLeft="5" paddingRight="5" paddingBottom="5"/>
                </s:layout>
                <s:HGroup width="100%" verticalAlign="middle" horizontalAlign="left" gap="10">
                    <mx:Text  text="{lsrPanelTitle}"/>
                    <mx:Spacer width="100%"/>
                        <s:Button label="Close" click="lsrPanel_closeHandler(event)"/>
                </s:HGroup>
                <mx:DataGrid id="lsrResults" width="100%" height="100%"dataProvider="{lsrSeriesList}"
                                         visible="{lsrSeriesList != null &amp;&amp; lsrSeriesList.length != 0}"
                                         itemClick="datagrid_itemClickHandler(event)">
                    <mx:columns>
                        <mx:DataGridColumn headerText="Date" dataField="date"/>
                        <mx:DataGridColumn headerText="Value" dataField="value" textAlign="right"                                                      itemRenderer="com.vanilla.package.class"/>
                                </mx:columns>
                    </mx:DataGrid>
       </s:Panel>

当我点击结束日期列时,屏幕分为两部分,一部分用于结果(noOfRows),另一部分用于lsrDetails。我想减小lsrDetails部分的宽度,并希望增加Results(noOfRows)的宽度。我怎样才能做到这一点? datagrid_itemClickHandler函数如下。我试图改变panelLsR中的宽度百分比,但没有运气。有人可以帮我实现吗?我是第一次在flex上工作。

protected function datagrid_itemClickHandler(event:ListEvent):void
        {           
            getsLsR(request);
        }
flex flex4 flex3 flex4.5
1个回答
0
投票

要使用百分比宽度调整面板大小,请使用'percentWidth'。例如:

panelsLsr.percentWidth = 80;

另外,修复其他面板宽度,使其最多可达100%。

© www.soinside.com 2019 - 2024. All rights reserved.