国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > WEB開發 > 正文

5.6.為Tree創建項渲染器

2024-04-27 13:51:56
字體:
來源:轉載
供稿:網友
5.6.1.問題
為Tree 組件更改功能
5.6.2.解決方法
創建一個itemRenderer 繼承自TreeItemRenderer 類
5.6.3討論
更改一個Tree 組件功能使之比其它基于list 的組件更靈活,與DataGrid, TileList, 或List組件不同的是,你不能為Tree 組件使用dropInItemRenderer,只能繼承TreeItemRenderer類來創建一個itemRenderer, TreeItemRenderer 為Tree 組件定義了默認的條目渲染器,TreeItemRenderer 的默認行為是在tree 中繪制關聯的每一個條目的文本,一個可選擇的圖標,和一個可選的可定義圖標.

通過這一節使用TreeListData 對象的父級傳遞TreeItemRenderer, TreeListData 定義了以下屬性:
depth : int tree 中條目的層級

disclosureIcon : Class 為Tree 組件的條目描繪可定義的圖標的一個類

hasChildren : Boolean 若該結點有孩子結點時為true

icon : Class 為Tree 組件的條目描繪圖標的一個類

indent : int Tree 組件的當前行的默認縮排

item : Object Tree 組件的當前條目的數據

label : String 條目數據的文本表現,基于List 類的itemToLabel 方法

open : Boolean 結點開放時為true

下面這個例子使用了這個方法來改變子文本為紫色和粗體.它同樣為每一個目錄增加了一些文本以顯示這個特別的分支中有多少對象。
+展開
-ActionScript
package oreilly.cookbook {
import mx.controls.treeClasses.*;
import mx.collections.*;
public class CustomTreeItemRenderer extends TreeItemRenderer {
public function CustomTreeItemRenderer() {
super ();
mouseEnabled = false ;
}

TreeItemRenderer 中的listData 屬性涉及到Tree 對象父級的數據,它是用來判斷當前渲染器數據對象包含的所有孩子
+展開
-ActionScript
override public function set data(value:Object):void {
if (value != null ) {
super.data = value;
if (TreeListData(super.listData).hasChildren) {
setStyle("color", 0x660099);
setStyle("fontWeight"'bold');
else
{
setStyle("color", 0x000000);
setStyle("fontWeight"'normal');
}
}
}

updateDisplayList 方法是被覆蓋來檢查當前渲染器傳遞的結點是否占有父級Tree 中TreeListData 正在使用的所有孩子
+展開
-ActionScript
override protected function updateDisplayList(unscaledWidth:Number,unscaledHeight:Number):void{
super.updateDisplayList(unscaledWidth, unscaledHeight);
if(super.data){
if(TreeListData(super.listData).hasChildren){
var tmp:XMLList = new XMLList(TreeListData(super.listData).item);
var myStr:int = tmp[0].children().length();
super.label.text =TreeListData(super.listData).label + "("+myStr + "objects)";
}
}
}
}
}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 贡山| 墨玉县| 宜君县| 民丰县| 广宗县| 华池县| 来宾市| 庆元县| 英德市| 临漳县| 湘潭县| 中西区| 西盟| 扶风县| 布拖县| 小金县| 攀枝花市| 西青区| 苏尼特右旗| 长宁区| 怀安县| 永登县| 衡阳市| 托里县| 齐齐哈尔市| 安塞县| 闽侯县| 新干县| 呼图壁县| 寿光市| 六盘水市| 祁连县| 昌乐县| 灵山县| 五大连池市| 炎陵县| 红原县| 南城县| 沙河市| 吐鲁番市| 东方市|