2010-07-26 5 views
1

에 대한 간단한 프로그래밍 질문은 내 플렉스 코드의 세그먼트에서 봐 주시기 바랍니다 :플렉스

<mx:Accordion id="accordian" width="100%" height="326" selectedIndex="0"> 
    <journal:ResearchJournalSection id="researchSection" width="100%"/> 
    <journal:QuestionJournalSection id="questionSection" width="100%"/> 
    <journal:DesignJournalSection id="designSection" width="100%"/> 
</mx:Accordion> 
<mx:Panel width="100%" height="129" layout="absolute" title="FAQ Area"> 
    <mx:Text x="0" y="10" text="What is a research question?&#xa;" width="250 

    height="20" fontWeight="bold"/> 
</mx:Panel> 

무엇도 아래에 자주 묻는 질문 질문 패널을 보여주는 세 개의 저널 (연구, 질문 및 디자인)를 보여주는 않습니다 . 현재 FAQ 패널에는 항상 "연구 문제 란 무엇인가"가 표시되지만 사용자가 현재 선택한 저널에 해당하는 것을 표시하도록하고 싶습니다. 예를 들어 사용자가 "디자인 저널"을 클릭하면 FAQ 영역의 해당 텍스트는 "디자인에 대한 importat은 무엇입니까?"를 읽어야합니다.

희망 나는 사전에 감사드립니다.

답변

3

내 플렉스는 약간 녹슨이지만, 당신은 액션 스크립트 함수에 아코디언을 가리키는에 change="myFunction()" 속성을 추가 할 수 있어야한다 :

myFunction() { 
    var selectedChild = accordian.selectedChild; //here 'accordian' is the id of your mx:Accordion 
    if (selectedChild.id == 'researchSection') { 
     myText.text = "What is a research question?"; //your mx:Text tag should have the id 'myText' 
    } else if (selectedChild.id == 'questionSection') { 
     myText.text = "What is a question question?"; //question question? that doesn't seem right; anyway you'll put something else here 
    } else if (selectedChild.id == 'designSection') { 
     myText.text = "What is a design question?"; 
    } 
} 

기능은 MXML 파일 내부에 스크립트 태그에 넣어해야합니다 .

+0

감사합니다. Ander, Flex에도 익숙하지 않습니다. myFunction을 해당 저널을 만든 mxml 파일에 직접 넣을까요? Thx. – Kevin

+1

예 '을 사용하여 스크립트 블록을 정의 할 수 있습니다. 자세한 내용은 http://livedocs.adobe.com/flex/3/html/help.html?content=usingas_2.html을 참조하십시오. 또한 나는 그 답을 약간 수정했다. –

+0

고마워요, Andrei, 완벽하게 작동합니다! 나도 많이 배웠습니다. – Kevin