Добавление границы в группу во время выполнения в flex - PullRequest
5 голосов
/ 17 октября 2011

Я пытаюсь создать группу искрового типа в flex во время выполнения. Я делаю пару кнопок как дочерние элементы этой группы во время выполнения.Я хочу добавить границу для всей группы.однако, когда я использую контейнер границы, он скрывает все остальные дочерние элементы и содержимое в групповом контейнере и показывает только экран контейнера границы.Как я могу добавить границу в группу.

Обратите внимание, что я добавляю контейнер границы как дочерний контейнер группы во время выполнения.

наилучшие пожелания

1 Ответ

7 голосов
/ 17 октября 2011

Вы можете добавить как: Rect child в конкретный индекс, действующий в качестве границы.

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
           xmlns:s="library://ns.adobe.com/flex/spark" 
           xmlns:mx="library://ns.adobe.com/flex/mx">

<fx:Script>
    <![CDATA[
        import mx.graphics.SolidColorStroke;

        import spark.primitives.Rect;

        protected function addNewBorderButtonClick(event:MouseEvent):void
        {
            var borderRect:Rect = new Rect();
            var solidStroke:SolidColorStroke = new SolidColorStroke(0, 3);
            borderRect.stroke = solidStroke;
            borderRect.percentWidth = borderRect.percentHeight = 100;

            targetGroup.addElementAt(borderRect, 0);
        }
    ]]>
</fx:Script>

<fx:Declarations>
</fx:Declarations>

<s:Group id="targetGroup" 
         width="100" height="100"
         horizontalCenter="0" verticalCenter="0">
    <!-- some visual elements here -->
    <s:Button id="addNewBorderButton" 
              label="Add Border"
              horizontalCenter="0" verticalCenter="0"
              click="addNewBorderButtonClick(event)" />
</s:Group>
</s:Application>

Надеюсь, это поможет,

Blaze

...