【发布时间】:2011-02-10 13:46:10
【问题描述】:
这是与我的第一个问题相关的第二个问题:
Flex 4: mx|tree - how can i disable items selection?
我想禁用悬停和选择颜色,这样当用户选择一个项目时,它的背景不会改变颜色。这怎么可能?
更新
我不想选择选择和悬停颜色。背景包含一个图像,所以它不会有用。我需要完全禁用颜色。
另一个更新
我试图覆盖 Tree 类,但没有成功。
这是覆盖树类的类:
package components.popups.WelcomeBack {
import mx.controls.listClasses.IListItemRenderer;
import mx.controls.Tree;
/**
* @author ufk
*/
public class TreeNoSelection extends Tree {
protected override function drawItem(item:IListItemRenderer,
selected:Boolean = false,
highlighted:Boolean = false,
caret:Boolean = false,
transition:Boolean = false):void
{
super.drawItem(item, false, false, false, transition);
}
}
}
这是我实际的树组件:
<?xml version="1.0" encoding="utf-8"?>
<WelcomeBack:TreeNoSelection xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx"
xmlns:WelcomeBack="components.popups.WelcomeBack.*" folderClosedIcon="{null}" defaultLeafIcon="{null}"
folderOpenIcon="{null}"
showRoot="false"
allowMultipleSelection="false" allowDragSelection="false" labelField="@label">
<fx:Declarations>
<!-- Place non-visual elements (e.g., services, value objects) here -->
</fx:Declarations>
<fx:Script>
<![CDATA[
import ItemRenderer.WelcomeBackTreeItemRenderer;
private var _themeLibrary:Object;
public function get themeLibrary():Object {
return this._themeLibrary;
}
public function set themeLibrary(tl:Object):void {
this._themeLibrary=tl;
var cf:ClassFactory = new ClassFactory();
cf.generator = ItemRenderer.WelcomeBackTreeItemRenderer;
cf.properties = {
_themeLibrary:this._themeLibrary
};
this.itemRenderer=cf;
}
]]>
</fx:Script>
</WelcomeBack:TreeNoSelection>
谢谢
【问题讨论】:
标签: apache-flex flex4 tree