2011-02-27 3 views
0

내 응용 프로그램에 Accordian이 있습니다. accordian의 각 하위에는 레이블 (firstNameLabel)과 버튼 (addPolicyButton)이 있습니다. 라벨의 값은 리피터와 배열을 통해 설정됩니다.accordian의 선택한 자식에서 레이블의 값에 액세스 할 때의 문제

addPolicyButton을 클릭하면 firstNameLabel의 'accordian의 선택한 하위'값에 어떻게 액세스합니까?

다음 코드에서 testTextArea.appendText는 testTextArea에 'fname : undefined'를 출력합니다. 여기서 accordon에서 set 레이블의 텍스트가 repMonitor.currentItem.firstName이 반환 한 'Michael'으로 설정되어 있음을 볼 수 있습니다.

코드 :

private function addPolicy():void{ 
     testTextArea.appendText("fname:"+firstNameLabel.text); 

    } 
<mx:Accordion id="monAccordian" includeIn="Monitoring" x="10" y="10" width="554" height="242" change="monAccordianChange()" > 
    <mx:Repeater id="repMonitor" dataProvider="{monitoringArray}"> 
     <mx:Canvas width="100%" height="100%" label="{repMonitor.currentItem.firstName}" > 
      <s:Label id="firstNameLabel" text="{repMonitor.currentItem.firstName}"/> 
     <mx:Button x="450" y="8" id="addPolicyButton" label="Modify policy" click="addPolicy();" visible="true"/> 
     </mx:Canvas> 
    </mx:Repeater> 
</mx:Accordion> 

<s:TextArea x="138" y="30" enabled="true" id="testTextArea" x.MainPage="80" y.MainPage="100" visible="true"/> 

답변

0

마치 마법처럼 일 다음과 같습니다. ;)

testTextArea.appendText ("fname :"+ monitoringArray.getItemAt (monAccordian.selectedIndex) .FirstName + "\ n");

관련 문제