получить все потомки элементов (элементов управления) VBox (контейнер) в flex? - PullRequest
0 голосов
/ 20 декабря 2010

можем ли мы получить все элементы и все потомки этих элементов в

VBox

? Допустим, у меня есть Vobx, в котором добавлена ​​сетка ... и в сетке есть много элементов управления texinput .. Я хочу получить доступ ко всем потомкам, которые

Сетка, GridRow, GridItem, TextInput

.. как это сделать?

1 Ответ

1 голос
/ 20 декабря 2010

Вам нужно написать рекурсивную функцию, которая пересекает иерархию компонентов.Нет встроенного метода для доступа к дочерним элементам ниже первого уровня контейнера.

Что-то вроде:

function traceDisplayObject(object:DisplayObject):void {
  trace("Object: " + object);

  if (object is Container) {
    var container:Container = Container(object);
    var numChildren:uint = container.numChildren;

    for (var i:uint = 0; i<numChildren; i++) {
      traceDisplayObject(container.getChildAt(i));
    }
  }
}

traceDisplayObject(myVBox);
...