ГлавнаяActionScript 3 — «100 советов» › Событие MOUSE_LEAVE или как узнать что мышка за пределами SWF

Событие MOUSE_LEAVE или как узнать что мышка за пределами SWF

June 19th, 2006
В ActionScript 3 можно определить что мышка ушла за пределы флеш-ролика, используя событие mouseLeave для stage. Это событие происходит каждый раз, когда мышка покидает пределы ролика. Нет события mouseEnter, но можно использовать mouseMove для определения того, что мышка вернулась к нам.
Простой пример использования нарисованного квадрата в качестве своего курсора.

Код:
package { import flash.display.Sprite; import flash.events.Event; import flash.events.MouseEvent; import flash.ui.Mouse; public class Test extends Sprite { private var cursor:Sprite = new Sprite(); public function Test() { cursor.graphics.beginFill(0xFF); cursor.graphics.drawRect(0, 0, 25, 25); addChild(cursor); stage.addEventListener(Event.MOUSE_LEAVE, cursorHide); stage.addEventListener(MouseEvent.MOUSE_MOVE, cursorFollow); Mouse.hide(); } public function cursorHide(evt:Event):void { cursor.visible = false; } public function cursorFollow(evt:MouseEvent):void { if (!cursor.visible) cursor.visible = true; cursor.x = stage.mouseX; cursor.y = stage.mouseY; evt.updateAfterEvent(); } } }

Когда мышка уходит за пределы флеш-ролика, наш курсор прячется. Когда мышка возвращается по событию mouseMove курсор снова отображается. Сделать такое в предыдущих версиях AS было нельзя.

Категория: ActionScript 3 — «100 советов» Ярлыки: ,

Смотрите также

Метки Класс SimpleButton
  1. Пока без комментариев.
  1. Пока нету.