Flex中通过扩展LinkButton类和重载enabled函数以及设置useHandCursor属性移除无效状态下LinkButton手型光标的例子
By Minidxer | September 7, 2008
接下来的例子演示了Flex中如何通过扩展LinkButton类和重载enabled函数以及设置useHandCursor属性,移除无效状态下LinkButton手型光标。Demo中enabled的CheckBox为Off时,后面两个LinkButton鼠标不是手型的。
让我们先来看一下Demo(可以右键View Source或点击这里察看源代码):
下面是完整代码(或点击这里察看):
Download: main.mxml
- <?xml version="1.0" encoding="utf-8"?>
- <mx:Application name="LinkButton_useHandCursor_test"
- xmlns:mx="http://www.adobe.com/2006/mxml"
- xmlns:comps="comps.*"
- layout="horizontal"
- verticalAlign="middle"
- backgroundColor="white">
- <mx:ApplicationControlBar dock="true">
- <mx:Form styleName="plain">
- <mx:FormItem label="enabled:">
- <mx:CheckBox id="checkBox" selected="true" />
- </mx:FormItem>
- </mx:Form>
- </mx:ApplicationControlBar>
- <mx:LinkButton id="linkButton"
- label="Default LinkButton"
- enabled="{checkBox.selected}" />
- <comps:DisabledLinkButtonMXML id="linkButton2"
- label="Custom LinkButton (MXML)"
- enabled="{checkBox.selected}" />
- <comps:DisabledLinkButtonAS id="linkButton3"
- label="Custom LinkButton (ActionScript)"
- enabled="{checkBox.selected}" />
- </mx:Application>
下面是DisabledLinkButtonMXML.mxml的代码:
Download: DisabledLinkButtonMXML.mxml
- <?xml version="1.0" encoding="utf-8"?>
- <mx:LinkButton xmlns:mx="http://www.adobe.com/2006/mxml">
- <mx:Script>
- <![CDATA[
- override public function set enabled(value:Boolean):void {
- super.enabled = value;
- useHandCursor = value;
- }
- ]]>
- </mx:Script>
- </mx:LinkButton>
下面是DisabledLinkButtonAS.as的代码:
Download: DisabledLinkButtonAS.as
- package comps {
- import mx.controls.LinkButton;
- public class DisabledLinkButtonAS extends LinkButton {
- /**
- * Constructor.
- */
- public function DisabledLinkButtonAS() {
- super();
- }
- /**
- * @private
- */
- override public function set enabled(value:Boolean):void {
- super.enabled = value;
- useHandCursor = value;
- }
- }
- }
代码:Peter deHaan 翻译/整理/编译:中文Flex例子
Topics:
Flex |
Tags: enabled, LinkButton, useHandCursor