最近在練習寫AS3,要適應一下新的寫法,目前遇到了一個怪現像。
通常要讓movie clip , MOUSE_OVER會有手指頭時,只要下一個
mc.buttonMode= true 就解決了。
但實作上,如果我的class 不extends MovieClip 或Button的話。
卻出不來,程式如下:

 /*CONSTRUCTOR*/
public function AlphaItem(a_mc:MovieClip,a_num:Number,a_str:String)
{
m_target = a_mc;
m_target.buttonMode = true
/*加上這個就好了*/
m_target.mouseChildren = false;

m_char=a_str;
m_data=a_num;
m_target.addEventListener(MouseEvent.MOUSE_DOWN,MOUSE_DOWN);
m_target.addEventListener(MouseEvent.MOUSE_OVER,MOUSE_OVER);
m_target.addEventListener(MouseEvent.MOUSE_OUT,MOUSE_OUT);
SetData();
}

2008.04.17
附註:
由於我的MovieClip裏面。除了有一個background之外還有2個文字框。
所以只靠buttonMode=true是不可以的。

奶綠
因為氣泡事件,所以會去抓到該元件裡的dynamic文字 
所以加上mouseChildren = false;
把子系的mouse感應通通取消即可

沒有留言: