我想在ActionScript中創建一個自定義按鈕。Actionscript 3.0 - >如何覆蓋來自UIComponent的受保護方法
這是我的代碼:
import flash.events.MouseEvent;
import mx.controls.Alert;
import spark.components.Button;
public class BookViewButton extends Button
{
public function BookViewButton()
{
super();
}
override protected function mouseOver(event:MouseEvent,increase:int,newImageSource:String):void{
Alert.show("mouseOver for new class works");
}
}
但是Adobe Flash Builder的信號的方法重載線路爲錯誤。
我試圖改變新的方法簽名,以便它完全匹配,就像這樣:(我認爲這個錯誤可能是因爲我給mouseOver
函數添加了額外的參數,所以Flex可能不會將它識別爲重寫)
override protected function mouseOver(event:MouseEvent):void{
Alert.show("mouseOver for new class works");
}
但仍然無效。同樣的小紅色驚歎號出現信號錯誤。
我非常感謝任何幫助。謝謝。
但請解釋我在哪裏發現'mouseOver()'方法來覆蓋? – Constantiner 2011-05-30 07:23:06
我真的沒有在任何地方找到它。我有點猜測應該有這樣的方法。或者,也許我誤解了一些信息。我不知道。現在是我住的地方上午04點30分。這應該部分解釋這一點。 =) – 2011-05-30 07:26:10
嗯..如果我正確理解你,你正在調用超類'eventHandler和*然後*添加額外的邏輯呢? – 2011-05-30 07:26:45