Using the itemDoubleClick event to open nodes in a Flex Tree control
Posted on 2008-01-10 17:27 OldHawk 阅读(613) 评论(0) 编辑 收藏 举报 The following example shows how you can use the itemDoubleClick
event to open the selected Tree node in Flex.
<?xml version="1.0" encoding="utf-8"?>
<!-- http://blog.flexexamples.com/2007/11/29/using-the-itemdoubleclick-event-to-open-nodes-in-a-flex-tree-control/ -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="horizontal"
verticalAlign="middle"
backgroundColor="white"
creationComplete="init();">
<mx:Script>
<![CDATA[
import mx.events.ListEvent;
private function tree_itemDoubleClick(evt:ListEvent):void {
var node:XML = tree.selectedItem as XML;
var isOpen:Boolean = tree.isItemOpen(node);
tree.expandItem(node, !isOpen);
}
]]>
</mx:Script>
<mx:XMLListCollection id="xmlListColl">
<mx:source>
<mx:XMLList>
<node label="One">
<node label="One.1">
<node label="One.1.1">
<node label="One.1.1.1">
<node label="One.1.1.1.1" />
</node>
</node>
</node>
<node label="One.2" />
<node label="One.3" />
</node>
<node label="Two">
<node label="Two.1" />
<node label="Two.2" />
<node label="Two.3" />
</node>
<node label="Three" />
</mx:XMLList>
</mx:source>
</mx:XMLListCollection>
<mx:ApplicationControlBar dock="true">
<mx:CheckBox id="checkBox"
label="doubleClickEnabled:"
labelPlacement="left"
selected="true" />
</mx:ApplicationControlBar>
<mx:Tree id="tree"
dataProvider="{xmlListColl}"
labelField="@label"
width="250"
rowCount="6"
doubleClickEnabled="{checkBox.selected}"
itemDoubleClick="tree_itemDoubleClick(event);"
showScrollTips="true" />
</mx:Application>
<!-- http://blog.flexexamples.com/2007/11/29/using-the-itemdoubleclick-event-to-open-nodes-in-a-flex-tree-control/ -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="horizontal"
verticalAlign="middle"
backgroundColor="white"
creationComplete="init();">
<mx:Script>
<![CDATA[
import mx.events.ListEvent;
private function tree_itemDoubleClick(evt:ListEvent):void {
var node:XML = tree.selectedItem as XML;
var isOpen:Boolean = tree.isItemOpen(node);
tree.expandItem(node, !isOpen);
}
]]>
</mx:Script>
<mx:XMLListCollection id="xmlListColl">
<mx:source>
<mx:XMLList>
<node label="One">
<node label="One.1">
<node label="One.1.1">
<node label="One.1.1.1">
<node label="One.1.1.1.1" />
</node>
</node>
</node>
<node label="One.2" />
<node label="One.3" />
</node>
<node label="Two">
<node label="Two.1" />
<node label="Two.2" />
<node label="Two.3" />
</node>
<node label="Three" />
</mx:XMLList>
</mx:source>
</mx:XMLListCollection>
<mx:ApplicationControlBar dock="true">
<mx:CheckBox id="checkBox"
label="doubleClickEnabled:"
labelPlacement="left"
selected="true" />
</mx:ApplicationControlBar>
<mx:Tree id="tree"
dataProvider="{xmlListColl}"
labelField="@label"
width="250"
rowCount="6"
doubleClickEnabled="{checkBox.selected}"
itemDoubleClick="tree_itemDoubleClick(event);"
showScrollTips="true" />
</mx:Application>