2010-11-17 8 views
0

J'ai une barre de menu dans un panneau d'allumage, je veux sélectionner l'un des éléments de menu en utilisant Actionscript Je ne sais pas comment cibler l'un des éléments. Voici un extrait de mon code de composant.Flex4 comment sélectionner un élément de menu dans la barre de menu

<?xml version="1.0" encoding="utf-8"?> 

<s:layout> 
    <s:BasicLayout /> 
</s:layout> 
<fx:Script> 
    <![CDATA[ 
     import events.CustomMenuEvent; 

     import mx.collections.ArrayCollection; 
     import mx.events.MenuEvent; 

     public function update(id:String):void 
     { 
      // This is where I would call the menu to update the button 
          // from its mediator. 
     } 

     protected function appMenu_itemClickHandler(event:MenuEvent):void 
     { 
      var data:String = [email protected]; 
      var menuEvent:CustomMenuEvent = new CustomMenuEvent(CustomMenuEvent.ITEM_CLICKED); 
      menuEvent.toggled = Boolean([email protected] == "true"); 
      menuEvent.data = data; 
      dispatchEvent(menuEvent); 
     } 
    ]]> 
</fx:Script> 

<fx:Declarations> 
    <fx:XMLList id="menuXML"> 
     <fx:menuitem label="File"> 
      <fx:menuitem label="Open" data="open"/> 
      <fx:menuitem label="Exit" data="exit"/> 
     </fx:menuitem> 
     <fx:menuitem label="View"> 
      <fx:menuitem label="Map" type="check" data="map"/> 
      <fx:menuitem label="Flights" type="check" data="flights"/> 
      <fx:menuitem label="Altitude Graph" type="check" data="altitude"/> 
     </fx:menuitem> 
    </fx:XMLList> 
</fx:Declarations> 

<s:controlBarContent> 
    <mx:MenuBar id="appMenu" 
       labelField="@label" 
       showRoot="true" 
       dataProvider="{menuXML}" 
       itemClick="appMenu_itemClickHandler(event)"/> 
</s:controlBarContent> 

+0

Ok maintenant j'ai ajouté quelques vars publics que je pense que je dois faire quelques liaison de données ici. C'est ce que j'ai fait. J'ai ajouté des variables publiques qui ont été changées et j'ai essayé de les lier au menuXML par exemple: Cela ne semble pas fonctionner, est-il possible de lier à xml qui est utilisé en tant que dataProvider de cette façon? – Neil

Répondre

Questions connexes