Flex中如何在Tree控件中指定一个自定义的label函数使其返回的标签名字为叶项目的名称的例子
By Minidxer | November 1, 2008
接下来的例子演示了Flex中如何在Tree控件中指定一个自定义的label函数,使其返回的标签名字为叶项目的名称。
让我们先来看一下Demo(可以右键View Source或点击这里察看源代码):
下面是完整代码(或点击这里察看):
Download: main.mxml
- <?xml version="1.0" encoding="utf-8"?>
- <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
- layout="vertical"
- verticalAlign="middle"
- backgroundColor="white">
- <mx:Script>
- <![CDATA[
- private function tree_labelFunc(item:XML):String {
- var label:String;
- switch (item.localName()) {
- case "league":
- label = item.@title;
- break;
- case "team":
- label = item.@name;
- break;
- case "stadium":
- label = item.name;
- }
- return label;
- }
- ]]>
- </mx:Script>
- <mx:XML id="mlb" source="mlb.xml" />
- <mx:Tree id="tree"
- dataProvider="{mlb.league}"
- labelFunction="tree_labelFunc"
- width="300"
- rowCount="8" />
- </mx:Application>
下面是
Download: mlb.xml
- <?xml version="1.0" encoding="utf-8"?>
- <mlb>
- <league id="al" title="American League">
- <team name="Baltimore Orioles" />
- <team name="Boston Red Sox" />
- <team name="Chicago White Sox" />
- <team name="Cleveland Indians" />
- <team name="Detroit Tigers" />
- <team name="Kansas City Royals" />
- <team name="Los Angeles Angels of Anaheim" />
- <team name="Minnesota Twins" />
- <team name="New York Yankees" />
- <team name="Oakland Athletics" />
- <team name="Seattle Mariners" />
- <team name="Tampa Bay Devil Rays" />
- <team name="Texas Rangers" />
- <team name="Toronto Blue Jays" />
- </league>
- <league id="nl" title="National League">
- <team name="Arizona Diamondbacks" />
- <team name="Atlanta Braves" />
- <team name="Chicago Cubs" />
- <team name="Cincinnati Reds" />
- <team name="Colorado Rockies" />
- <team name="Florida Marlins" />
- <team name="Houston Astros" />
- <team name="Los Angeles Dodgers" />
- <team name="Milwaukee Brewers" />
- <team name="New York Mets" />
- <team name="Philadelphia Phillies" />
- <team name="Pittsburgh Pirates" />
- <team name="San Diego Padres" />
- <team name="San Francisco Giants" />
- <team name="St. Louis Cardinals" />
- <team name="Washington Nationals" />
- </league>
- </mlb>
代码:Peter deHaan 翻译/整理/编译:中文Flex例子
Topics:
Tree |
No Comments » |
405 views
Tags: E4X, labelFunction, localName(), Tree.