2010-11-23 78 views
0

我有一個應用程序提供了一個接受許多數據項的表單。我想「調暗」那些還未完成的非必填字段(通過將alpha設置爲「.5」)。我正在考慮創建一個數組並手動輸入所有的TextInputs和CheckBoxes等,但後來我認爲可能/應該是獲取應用程序中所有組件和控件列表的一種方式。我已經做了一些研究,但還沒有找到答案 - 我會繼續尋找。當我自己看時,我想我會在這裏問這個問題。感謝您的任何指導。在Flex 4中,如何獲取我的應用程序中的組件列表

+0

你有沒有得到這個問題的答案?有沒有像getcomponentList這樣的方法? – karthi 2011-10-19 09:43:37

回答

0

我建議你看看使用mx包中的Form和FormElement容器。這些將在flex4中工作。這使您可以非常輕鬆地設置驗證和必填字段。這裏是documentation

+0

謝謝Greg。我正在使用Form和FormElement容器,我正在使用一些驗證並指示必需的字段。我沒有正確地問我的問題 - 抱歉。我想知道的是如何在運行時動態獲取我的組件列表。我在尋找一個「getComponentList」類型的函數。例如,如果我有一個帶有3個FormElements的Form,我想在運行時創建這些列表。謝謝 – JoeH 2010-12-01 19:17:48

0

看完你的評論後,聽起來很簡單。您可以循環顯示錶單元素。 MX Form和Spark Form不同。

var listOfElements:Array = []; 
var formItem:FormItem; 

for (var i:int = 0; i < myForm.numElements; i++) //myForm.numChildren for MX 
{ 
    formItem = myForm.getElementAt(i) as FormItem; //myForm.getItemAt(i) for MX 

    if(formItem) 
    { 
     trace("setting alpha for",formItem.name); 
     formItem.alpha = 0.5; 
     listOfElements.push(formItem); 
    } 
} 
相關問題