2009-10-12 80 views

回答

4

我不完全相信你的问题是什么,因为你不说是否没有编制,没有显示或者给一个运行时错误等等,所以我把一个MXML来证明它。这些代码大部分来自树和菜单示例中的拼凑在一起。有关更多详细信息,请参阅文档。

<?xml version="1.0" encoding="utf-8"?><mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"> 
<mx:Script> 
    <![CDATA[ 
     import mx.collections.ArrayCollection; 
     import mx.controls.Menu; 
     [Bindable] 
     public var selectedNode:XML; 

     // Event handler for the Tree control change event. 
     public function treeChanged(event:Event):void { 
      selectedNode=mx.controls.Tree(event.target).selectedItem as XML; 
     } 

     private var prevMenu:Menu = null 

     public function showMenu(event:MouseEvent):void 
     { 
      if(prevMenu != null) 
       prevMenu.hide() 
      var menu:Menu = Menu.createMenu(null, menuData, false); 
      menu.labelField="@label" 
      menu.show(event.stageX, event.stageY) 
      prevMenu = menu 
     } 

    ]]> 
</mx:Script> 
<mx:XML id="menuData"> 
    <root> 
     <menuitem label="copy" eventName="copy"/> 
     <menuitem label="paste" eventName="paste"/> 
    </root> 
</mx:XML> 
<mx:XMLList id="treeData"> 
    <node label="Mail Box"> 
     <node label="Inbox"> 
      <node label="Marketing"/> 
      <node label="Product Management"/> 
      <node label="Personal"/> 
     </node> 
     <node label="Outbox"> 
      <node label="Professional"/> 
      <node label="Personal"/> 
     </node> 
     <node label="Spam"/> 
     <node label="Sent"/> 
    </node>  
</mx:XMLList> 
<mx:Panel title="Tree Control Example" height="75%" width="75%" 
    paddingTop="10" paddingLeft="10" paddingRight="10" paddingBottom="10"> 

    <mx:Label width="100%" color="blue" 
     text="Select a node in the Tree control."/> 

    <mx:HDividedBox width="100%" height="100%"> 
     <mx:Tree id="myTree" width="50%" height="100%" labelField="@label" 
      showRoot="false" dataProvider="{treeData}" change="treeChanged(event)" 
      rightClick="showMenu(event)"/> 
     <mx:TextArea height="100%" width="50%" 
      text="Selected Item: {[email protected]}"/> 
    </mx:HDividedBox> 

</mx:Panel></mx:WindowedApplication> 
相关问题