我剛剛更新了Flash Player 11.2,它允許監聽MouseEvent.RIGHT_MOUSE_UP和MouseEvent.RIGHT_MOUSE_DOWN。Flash右鍵點擊的方式與左擊不同
我遇到了一個問題,這些事件的行爲與其MOUSE_UP/MOUSE_DOWN對應行爲不一樣。具體而言,無論鼠標位於何處,都會啓動MOUSE_UP事件。這允許在Flash窗口外面拖動,並且每當用戶點擊Flash播放器時仍然具有完整的向下 - >向上事件循環。
但是,對於RIGHT_MOUSE_UP/DOWN,這似乎不是這種情況。當我在播放器內右鍵單擊並釋放到播放器外部時,我沒有收到RIGHT_MOUSE_UP事件,這意味着可能會收到多個RIGHT_MOUSE_DOWN事件而沒有收到UP事件。
有沒有已知的解決方法,或者是否有我必須設置的選項?
編輯:
這裏是一個代碼示例:
stage.addEventListener(MouseEvent.MOUSE_UP, onMouseUp);
stage.addEventListener(MouseEvent.MOUSE_DOWN, onMouseDown);
stage.addeventListener(MouseEvent.RIGHT_MOUSE_UP, onRightMouseUp);
stage.addeventListener(MouseEvent.RIGHT_MOUSE_DOWN, onRightMouseDown);
//...
//all callback function follow a similar format as :
private function onMouseUp(e : MouseEvent) : void
{
leftClick_ = false;//signaling that leftClick is not pressed
}
您確定已將'RIGHT_MOUSE_UP'偵聽器附加到'Stage',因爲這非常重要。 – xLite 2012-04-29 11:49:11
你可以發佈一個片段嗎? – Chris 2012-04-29 11:54:37
添加了一個顯示我的代碼如何工作的編輯。事件聽衆的確加入了舞臺。 – Godfather 2012-04-29 17:46:23