Flex: Tree 에서 ICON 을 사용자 정의 하 는 몇 가지 방식
1. 기본 트 리 의 속성 은 폴 더 와 파일 이 모두 folderOpenIcon, folderClosed Icon, and defaultLeafIcon 을 통 해 실 행 됩 니 다. 프로그램 에서 기본 인 자 를 얻 으 려 면 이 몇 개의 인 자 를 통 해 처리 할 수 있 습 니 다.
var myMenu:SysMenu = SysMenu(item); if(myMenu.children.length==0){ return leftMenuTree.getStyle("defaultLeafIcon"); } if ( leftMenuTree.isItemOpen(item) ) { return leftMenuTree.getStyle("folderOpenIcon"); } else { return leftMenuTree.getStyle("folderClosedIcon"); }
물론 플 렉 스 라벨 을 통 해 직접 만 들 수도 있 습 니 다.
2. data provider 를 통 해 데이터 원본 을 제공 할 때 icon 을 지정 합 니 다.
3. 함수 setItemItcon 을 통 해
[Bindable] [Embed(source="assets/radioIcon.jpg")] public var iconSymbol1:Class; [Bindable] [Embed(source="assets/topIcon.jpg")] public var iconSymbol2:Class; private function setIcons():void { myTree.setItemIcon(myTree.dataProvider.getItemAt(0), iconSymbol1, iconSymbol2); myTree.setItemIcon(myTree.dataProvider.getItemAt(1), iconSymbol2, null); }
4. Tree 는 icon 의 속성 iconFunction 을 지원 합 니 다. 사용자 정의 처리 함 수 를 사용 하면 됩 니 다. 예 는 다음 과 같 습 니 다.
<?xml version="1.0" encoding="utf-8"?>
<!-- http://yecon.blog.hexun.com/30744073_d.html -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="vertical"
verticalAlign="middle"
backgroundColor="white">
<mx:Script>
<![CDATA[
[Bindable]
[Embed("assets/bullet_go.png")]
private var myBulletGoIcon:Class;
[Bindable]
[Embed("assets/bullet_star.png")]
private var myBulletStarIcon:Class;
[Bindable]
[Embed("assets/bullet_wrench.png")]
private var myBulletWrenchIcon:Class;
private function tree_iconFunc(item:Object):Class {
var iconClass:Class;
switch (XML(item).localName()) {
case "league":
iconClass = myBulletGoIcon;
break;
case "division":
iconClass = myBulletStarIcon;
break;
case "team":
iconClass = myBulletWrenchIcon;
break;
}
return iconClass;
}
]]>
</mx:Script>
<mx:XML id="dp">
<mlb>
<league label="American League">
<division label="East">
<team label="Boston" />
<team label="New York" />
<team label="Toronto" />
<team label="Baltimore" />
<team label="Tampa Bay" />
</division>
<division label="Central">
<team label="Cleveland" />
<team label="Detroit" />
<team label="Minnesota" />
<team label="Chicago" />
<team label="Kansas City" />
</division>
<division label="West">
<team label="Los Angeles" />
<team label="Seattle" />
<team label="Oakland" />
<team label="Texas" />
</division>
</league>
</mlb>
</mx:XML>
<mx:Tree id="TreeProject"
dataProvider="{dp.league}"
labelField="@label"
showRoot="true"
iconFunction="tree_iconFunc"
width="320"
height="240" />
</mx:Application>
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.