ActionScript 3,动作脚本中的网格和网格行

时间:2014-06-26 04:07:23

标签: actionscript-3 flex actionscript flex4

我想在Flex中创建一个包含子节,colspans和rowsans的表。我已经使用< mx:Grid>构建了它。和< mx:GridRow>就像在flex中硬编码一样,但我想用Action Script动态构建它。

我真的不确定如何建造它。 这是我的示例代码需要转换为Action Script

<mx:Grid id="metricsGrid" styleName="grid" backgroundColor="blue" horizontalAlign="center" width="100%" height="100%">
    <mx:GridRow id="cashMetricsGridHeaderRow" >
        <mx:GridItem colSpan="3" styleName="gridItem" verticalAlign="middle" horizontalAlign="center" >
            <mx:Label text="{ getTodaysDateWithTitle() }" styleName="boldFontWeight"></mx:Label>
        </mx:GridItem>
    </mx:GridRow>

    <mx:GridRow id="metricsGridRow1" borderColor="black">
        <mx:GridItem rowSpan="3" styleName="gridItem" verticalAlign="middle" horizontalAlign="center" >
            <mx:Label text="ABC" height="50" styleName="boldFontWeight"></mx:Label>
        </mx:GridItem>
        <mx:GridItem rowSpan="3" styleName="gridItem" verticalAlign="bottom" horizontalAlign="center" >
            <mx:Label text="Total" height="50" styleName="boldFontWeight"></mx:Label>
        </mx:GridItem>
        <mx:GridItem rowSpan="3" styleName="gridItem" verticalAlign="middle" horizontalAlign="center" >
            <mx:Label text="XYZ" styleName="boldFontWeight"></mx:Label>
        </mx:GridItem>
    </mx:GridRow>
</mx:Grid>

如果您需要任何其他信息,请告诉我们。 非常感谢您的帮助。感谢。

1 个答案:

答案 0 :(得分:0)

以下内容应该让您入门。从createGrid()覆盖或createChildren()事件监听器调用initialize

请注意,此处声明的变量可能需要是类变量才能轻松访问它们。

private function createGrid() {
    var metricsGrid:Grid = new Grid();
    //set other properties on metricsGrid

    var cashMetricsGridHeaderRow:GridRow = new GridRow();
    //set other properties on metricsGrid

    var item:GridItem = new GridItem();
    //set other properties on GridItem

    var label:Label = new Label();
    label.text = getTodaysDateWithTitle();

    item.addElement(label);
    cashMetricsGridHeaderRow.addElement(item);
    metricsGrid.addElement(cashMetricsGridHeaderRow);

    this.addElement(grid);
}