странное поведение с addChild - PullRequest
0 голосов
/ 13 марта 2012

Я пытаюсь добавить один Box в мое приложение, используя следующий код

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" minWidth="955" minHeight="600"
                >
    <mx:HBox height="100%" width="100%" backgroundColor="red"  borderColor="black"/>
    <mx:Script>
        <![CDATA[
            import mx.collections.ArrayCollection;
            import mx.containers.Box;
            import mx.events.FlexEvent;


            protected function button1_clickHandler():void
            {
                var box:Box = new Box();
                box.setStyle("backgroundColor","blue");
                box.height = 100;
                box.width = 100;
                //box.addChild(new Button());
                addChild(box);
                trace("children  "+numChildren);
            }

        ]]>
    </mx:Script>
    <mx:Button label="click" click="button1_clickHandler()" x="200" y="200" />
</mx:Application>

этот код работает в flexBuilder.но он не работает при компиляции в командной строке (используя команду mxmlc).Пожалуйста, предложите мне этот вопрос, потому что моя работа полностью зависит от командной строки.

заранее спасибо vengatesh s

1 Ответ

0 голосов
/ 13 марта 2012

Это полностью зависит от компилятора, который вы используете. Если вы используете компилятор Flex 4+, я бы посоветовал вам попробовать использовать addElement вместо addChild. Тот же код выше просто меняется на

protected function button1_clickHandler():void
{
    var box:Box = new Box();
    box.setStyle("backgroundColor","blue");
    box.height = 100;
    box.width = 100;
    /********** ----------- CHANGE----------------------********/
    // This is the only change from your code
    addElement(box);
    /********** ----------- CHANGE----------------------********/
    trace("children  "+numChildren);
}
...