ラベル Tree の投稿を表示しています。 すべての投稿を表示
ラベル Tree の投稿を表示しています。 すべての投稿を表示

2008年12月4日木曜日

FlexでTreeを表示


Flexでのツリーの初期化を行います。
myXMLという変数にディレクトリを表現したXMLを記述します。

Treeコンポーネントを用意して


<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="initApp();">
<mx:Script>
<![CDATA[
private var myXML:XML =
<dir name="Yahooトピックス" url="http://dailynews.yahoo.co.jp/fc/rss.xml">
<dir name="国内" url="http://dailynews.yahoo.co.jp/fc/domestic/rss.xml"/>
<dir name="地域" url="http://dailynews.yahoo.co.jp/fc/local/rss.xml"/>
<dir name="経済" url="http://dailynews.yahoo.co.jp/fc/economy/rss.xml"/>
<dir name="海外" url="http://dailynews.yahoo.co.jp/fc/world/rss.xml"/>
<dir name="エンターテイメント" url="http://dailynews.yahoo.co.jp/fc/entertainment/rss.xml"/>
<dir name="スポーツ" url="http://dailynews.yahoo.co.jp/fc/sports/rss.xml"/>
<dir name="サイエンス" url="http://dailynews.yahoo.co.jp/fc/science/rss.xml"/>
<dir name="コンピュータ" url="http://dailynews.yahoo.co.jp/fc/computer/rss.xml"/>
</dir>

//アプリケーション初期化
public function initApp():void{
//ツリーの初期化
rssTree.dataProvider = myXML;
}
]]>
</mx:Script>

<mx:Tree x="10" y="80" width="219" height="308" id="rssTree"
labelField="@name"
defaultLeafIcon="@Embed(source='Assets.swf', symbol='TreeFolderClosed')"/>

</mx:Application>


idを入れてアプリケーション初期化のメソッドにdataProviderを指定させます。
これでツリーが表示されるはずです。

2008年11月24日月曜日

Treeを展開してみる

FlexでTreeを使用していますが
初期表示でTreeを展開したいと思いました。

すべての設定終わった後に動作するcallLater()を使用するようです。

初期化系のメソッド内でこれを行い、

tree.dataProvider = wkXML;
//ノードを展開する
callLater(expandFirstNode);


でそのメソッドを定義します。


//ツリーを展開する
private function expandFirstNode():void
{
//ディレクトリ選択
tree.selectedIndex=0;
//ルートを展開
tree.expandItem(tree.dataProvider.getItemAt(0),true);
}


これで初期化と同時にツリーが展開します。

2008年9月15日月曜日

Treeコンポーネントのアイコンを変更

Tree表示のアイコンの表示を変更してみました。


<mx:tree change="treeChange(event);"
labelField="@name"
defaultLeafIcon="@Embed(source='Assets.swf', symbol='TreeFolderClosed')"/>


defaultLeafIconの部分は「ファイル」表示されるアイコンですね。



デフォルトのアイコンに変更したかったんで若干苦労していました。
Assets.swfから抜き出すように記述するんですね。
ディレクトリのみ表示みたいなときに役立つかと。