PDA

Просмотр полной версии : как организовать перебор всех компонентов на форме?


Max N Chubin
24.03.2008, 18:31
Ребятки подскажите чайнику где я ошибка? Задача тривиальна - есть некая форма на которой лежат компоненты разных типов ComboBox, TextInput, CheckBox ... требуется запомнить их состояние. Компонентов много, так что руками писать долго и муторно. Хочу перебрав в цикле FOR ...IN ... все компоненты находящиеся на форме сохранить в хэше.
Стыдно признаться, но не работает перебор...
вот я накидал простецкий пример... подскажите в каком гене у меня ошибка?
:rolleyes:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:Script>
<![CDATA[
private function click():void{
for (var t:* in form1){
ti1.text+=t.id+",";
}
ti1.text+=form1.id;
}
]]>
</mx:Script>
<mx:TabNavigator x="10" y="10" width="419" height="292">
<mx:Canvas label="form1" width="100%" height="100%" id="form1"><mx:ComboBox x="10" y="10" id="cb1"></mx:ComboBox>
<mx:TextInput x="10" y="113" id="ti1" height="136"/>
<mx:CheckBox x="10" y="40" label="Checkbox" width="160" id="ch1"/>
<mx:Button x="10" y="70" label="Button" width="160" click="click()"/>
</mx:Canvas>
</mx:TabNavigator>
</mx:Application>

Sneg
24.03.2008, 19:48
Используйте у контейнеров метод getChildren() и numChildrens, а также методы по получению детей по их индексу.

Max N Chubin
24.03.2008, 20:03
премного обязан. все получилось. спасибо.