|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
stage ROLL_OVER почему-то не срабатывает
всем привет, подскажите почему не срабатывает событие ролл овер
package com { import flash.display.MovieClip; import flash.display.Stage; import flash.events.Event; import flash.events.MouseEvent; import flash.ui.Mouse; public class Main extends MovieClip { private static const CURSOR_X:int = 250; private static const CURSOR_Y:int = 150; private var cursor:MovieClip; private var _stage:Stage; public function Main() { this.addEventListener(Event.ADDED_TO_STAGE, init); } private function init(e:Event):void { trace("Main class loaded") this.removeEventListener(Event.ADDED_TO_STAGE, init); _stage = stage; //Mouse.hide(); cursor = new Cursor(); stage.addChild(cursor); cursor.x = CURSOR_X; cursor.y = CURSOR_Y; cursor.rotation = -7; _stage.addEventListener(MouseEvent.ROLL_OVER, mouseOver, false, 0, true); _stage.addEventListener(MouseEvent.MOUSE_MOVE, moveCursor, false, 0, true); } private function mouseOver(e:MouseEvent):void { trace("mouse over") cursor.gotoAndStop("handl"); } private function moveCursor(e:MouseEvent):void { cursor.x = stage.mouseX; cursor.y = stage.mouseY; } } } |
|
|||||
Какой смысл создавать переменную _stage? И зачем вам вообще в данной ситуации ROLL_OVER? У вас курсор всегда будет в положении "handl".
Добавлено через 4 минуты Точно не помню, но stage вроде не отправляет события ROLL_OVER, MOUSE_OVER. Используйте Event.ACTIVATE. |
|
|||||
дело в том что, курсор если не наводит он движется, а как только навели на стэдж, наш курсор должен зафиксироваться
|
|
|||||
Сразу не объяснил, сори.
Делаю баннер, внутри баннера есть свой нарисованный смешной курсор, пока на баннер не навели, нарисованный курсор "дергается" ) как только мы навели на баннер, наш нарисованный курсор меняет настоящий курсор и нарисованный курсор перескакивает на кадр "handl" в этом кадре он фиксируется. Добавлено через 50 секунд И пользователь уже управляет "не дерганым" курсором Добавлено через 10 минут ACTIVATE что-то не подходит, идея такая: пользователь навел на баннер настоящий курсор и тут должно сработать событие mouseOver |
|
|||||
Регистрация: Oct 2010
Адрес: PNZ
Сообщений: 20
|
Попробуйте сделать подложку у банера в виде прозрачного MovieClip - и все реакции курсора перевесить на него. Только с уходом курсора со сцены будет проблематично, но и тут можно извернуться - к примеру сделать таймер проверяющий находится ли мышь в области флешки
|
|
|||||
Цитата:
Цитата:
|
|
|||||
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
stage прекрасно ловит MOUSE_MOVE
__________________
Reality.getBounds(this); |
|
|||||
а как быть в таком случае:
мы схватили предмет, начинаем его "таскать" по сцене, а под предметом который мы таскаем находится персонаж. К персонажу прикручен слушатель ROLL_OVER, но слушатель не срабатывает, хотя, к курсору и к предмету который мы таскаем прописан такой код: |
|
|||||
Цитата:
Цитата:
|
Часовой пояс GMT +4, время: 02:39. |
|
« Предыдущая тема | Следующая тема » |
Теги |
ROLL_OVER , stage |
|
|