2016-07-31 30 views
0

Ich möchte die TextArea unter meiner zweiten Registerkarte aktualisieren, wenn auf die Registerkarte geklickt wird. Es wird jedoch nur aktualisiert, wenn ich auf die TextArea oder den Container für diesen Textbereich klicke.Actionscript - Wie setze ich einen Click-Handler auf eine Registerkarte in TabNavigator?

Flex:

<mx:Box paddingLeft="0" paddingRight="0" paddingBottom="0" paddingTop="0" width="100%" height="100%" 
<mx:VBox id="vbxHTMLBody" width="100%" height="100%" horizontalScrollPolicy="off" horizontalAlign="center"> 
    <mx:TabNavigator id = "tabNav" borderStyle="solid" width="100%" height="100%" creationPolicy="all"> 
    <mx:VBox label="Tab1" width="100%" height="100%"> 
      <mx:TextArea id="textArea1" paddingTop="25" paddingLeft="25" paddingRight="25" verticalScrollPolicy="on" focusThickness="0" borderThickness="0" borderStyle="none" editable="true" fontFamily="Arial" fontSize="14" width="100%" height="100%"/> 
    </mx:VBox> 
    <mx:VBox label="Tab2" width="100%" height="100%" click="updateTextArea2()">  
      <mx:TextArea id="textArea2" paddingTop="25" paddingLeft="25" paddingRight="25" verticalScrollPolicy="on" focusThickness="0" borderThickness="0" borderStyle="none" editable="true" fontFamily="Arial" fontSize="14" width="100%" height="100%"/> 
    </mx:VBox> 
    </mx:TabNavigator> 
</mx:VBox> 
</mx:Box> 

Action:

private function updateTextArea2(): void { 
    textArea2.htmlText = textArea1.text; 
    tabNav.validateNow(); 
    textArea2.validateNow(); 
} 

* ich auch habe versucht, den Klick-Listener zu den äußeren Behälter einstellen, und das hat auch nicht funktioniert.

Antwort

0

Ich verwendete change = "updateTextArea2()", um auf Änderungen im Textbereich zu warten.

0

Anruf updateTextArea2() auf Änderung des TabNavigator:

<mx:TabNavigator id="tabNav" change=updateTextArea2()"> 

anstelle von VBox ändern.