1
我有一個用於發送消息的按鈕。當消息文本爲空時,應該不可能點擊按鈕。如何禁用Flex3按鈕上的圖標
這很好,不是問題。唯一困擾我的是我可以禁用發送按鈕,但圖像不會被禁用(就像我期望的那樣)。
有沒有辦法做到這一點,因爲我不想提供sendicon_disabled.png
並自己改變它(我認爲這不應該是我的工作)。
我有一個用於發送消息的按鈕。當消息文本爲空時,應該不可能點擊按鈕。如何禁用Flex3按鈕上的圖標
這很好,不是問題。唯一困擾我的是我可以禁用發送按鈕,但圖像不會被禁用(就像我期望的那樣)。
有沒有辦法做到這一點,因爲我不想提供sendicon_disabled.png
並自己改變它(我認爲這不應該是我的工作)。
您可以使用下面的按鈕爲:
package
{
import mx.controls.Button;
import mx.core.mx_internal;
use namespace mx_internal;
public class IconButton extends Button
{
private var enabledChanged:Boolean = false;
override public function set enabled(value:Boolean):void
{
if (super.enabled == value)
{
return;
}
super.enabled = value;
enabledChanged = true;
invalidateDisplayList();
}
override protected function updateDisplayList(unscaledWidth:Number,
unscaledHeight:Number):void
{
super.updateDisplayList(unscaledWidth, unscaledHeight);
if (enabledChanged)
{
if (!enabled && currentIcon)
{
currentIcon.alpha = 0.5;
}
enabledChanged = false;
}
}
}
}
您可以使用您的自定義alpha
值或將其移動到不同的風格。
+1不錯的一個君士坦丁。這也是過去一直困擾我的東西。我一定要保留這個以備將來使用。 – 2011-06-09 15:03:28
這很好,謝謝! – Besi 2011-07-29 15:34:52