2012-05-16 96 views
0

我有一個正在監聽鼠標懸停事件的MovieClip。 在這個影片剪輯中,我想在鼠標懸停時顯示一個按鈕。多個鼠標事件as3

問題是,當移動到按鈕區域時,影片剪輯會獲取鼠標移出事件。 我希望他只有在住他的直腸區域時才能得到鼠標移出事件。

我發現了一個解決方案:使鼠標位置計算,並將它們與我的movieClip位置進行比較,以檢測我是否應該處理或忽略該事件。

但是有沒有更簡單,更多的Adobe解決方案?

編輯:內部按鈕需要接收鼠標事件以及

+0

請問你在談論的解決方案中使用MOUSE_MOVE或ENTER_FRAME監聽器,而不是與'hitTestPoint比較鼠標線一個偉大的文章() 「每次傳球?爲了獲得更大的靈活性,我決定讓這兩位聽衆爲「鼠標懸停」事件而不是單獨的聽衆進行回顧。 –

回答

1

設置mouseChildren = falseMovieClip或使用ROLL_OVERROLL_OUThere「關於這個問題

+0

相同的,如果該網站是不斷離線,這個答案是沒用的。下次再做更多努力.. – xLite

+0

我應該刪除它並添加爲評論嗎?在這種情況下,我不確定關於stackoveflow的準則。該頁面現在提供有價值的信息。 –

0

人的內心按鈕需要接受MouseEvents呢?如果沒有,只是設置它的

button.mouseEnabled = false; 

,或者你可以設置父影片剪輯的

movieclip.mouseChildren = false; 
+0

或者,您可以使用ROLL_OVER和ROLL_OUT事件,會考慮到活動對象的帳戶兒童 –

+0

是按鈕需要接收的事件了。我什麼時候開始推出活動? –

1

ROLL_OVER和ROLL_OUT事件應該工作(使用它們,而不是MOUSE_OVER和MOUSE_OUT)。

+0

沒有它不工作,我添加日誌,我看到每一個,我得到ROLL_OVER事件MOUSE_OVER時被觸發,以及與推出 –