我正在用Flash Develop创建一个应该非常简单的全屏拖放游戏。它运行良好,除了一个令人沮丧的问题。
我将物品添加到舞台上,为它们添加MOUSE_DOWN侦听器,并在其中一个侦听器发现时开始拖动。然后,我添加了一个MOUSE_UP侦听器来确定何时停止拖动。同样,这很好地工作,除非鼠标指针位于屏幕左侧。当鼠标全部移到屏幕左侧时,我松开鼠标或按下鼠标没有侦听器被触发。我还将其从全屏模式中取出,如果鼠标在0以下,则不会触发鼠标事件。
到底是怎么回事?
private function itemSelectedHandler(e:MouseEvent):void
{
thisItem = GameItem(e.currentTarget);
thisItem.startDrag();
stage.addEventListener(MouseEvent.MOUSE_UP, itemUnselectedHandler, false, 0, true);
}
private function itemUnselectedHandler(e:MouseEvent):void
{
stopDrag();
stage.removeEventListener(MouseEvent.MOUSE_UP, itemUnselectedHandler);
thisItem.removeEventListener(MouseEvent.MOUSE_DOWN, itemSelectedHandler);
}