Есть ли в Flash Pro CS5 какой-либо класс, такой как VBox, HBox и т. Д.? - PullRequest
1 голос
/ 27 сентября 2011

Flex имеет отличные классы для управления элементами управления в многоэкранных приложениях, таких как VBox, HBox, VGroup и т. Д. Но мой проект находится во Flash Proffesional CS5. Есть ли способ использовать эти функции?

1 Ответ

4 голосов
/ 27 сентября 2011

Из коробки, нет. Нельзя использовать инфраструктуру Flex без сборки в качестве проекта Flex; в этих классах много кода, который зависит от запуска в других контейнерах Flex.

Если вам просто нужен код для укладки дочерних элементов по вертикали или горизонтали (без каких-либо этапов измерения / разметки), то этот код довольно тривиален. Вот некоторый очень предварительный код для контейнера, который будет складывать дочерние элементы вертикально без проходов макета.

public class VerticalContainer extends Sprite
{
    public function VerticalContainer()
    { super(); }

    override public function addChild(child:DisplayObject):DisplayObject
    {
          child.y = height;
          return super.addChild(child);
    }
}

Там нет защиты местоположения ребенка, поэтому все, на что есть ссылка, может переместить его без ведома VerticalContainer. Здесь нужно заполнить множество дыр, но это примитивный пример того, что вы могли бы сделать, чтобы написать эти компоненты.

...