![]() |
|
||||||||||
|
|||||
|
Регистрация: Apr 2009
Сообщений: 25
|
Люди!
Не могу решить проблему. Есть 3 объекта которые объеденены в мувик. 2 кнопки и мувик. Они должны выпадать с края экрана на Mouse_OVER. Использую Tween. Но когда начинает выпадать то за кнопкой появляется мувик и он тутже понимает это как Mouse_OUT. Т.е. каждый объект в мувике при перемещении дает новое событие OVER и OUT. Воощем марока. Глючит адцки! Как быть? mport fl.transitions.Tween; import fl.transitions.easing.*; Clip1.addEventListener(MouseEvent.MOUSE_OVER,Start); Clip1.addEventListener(MouseEvent.MOUSE_OUT,Stop); function Start (evt:Event):void{ var tweenOver:Tween = new Tween(Clip1,"y",Bounce.easeOut,-125,142,1.5,true); } function Stop (evt:Event):void{ var tweenOver:Tween = new Tween(Clip1,"y",Bounce.easeOut,142,-125,1.5,true); } |
|
|||||
|
положите сверху один большой прозрачный мувик, чтобы через него все остальные не пробивались.
|
|
|||||
|
.
|
или
|
|
|||||
|
С детями интересное решение.
|
|
|||||
|
Регистрация: Apr 2009
Сообщений: 25
|
Да мне тоже больше понравилось через Children.
Я с прозрачным пробовал, если его положить поверх всего то кнопки перестают работать. Спасибо огромное за ответы, а то я недавно начал програмить в AS3. Добавлено через 22 минуты Кнопки после того как tween случился не работают . Ну что за непруха?Добавлено через 47 часов 29 минут С активностью кнопок разобрался вроде. Children не помогли, ибо перестают быть активными кнопки, а вот прозрачный слой получился, только нужно не MOUSE_OVER использовать а ROLL_OVER. Но теперь другая проблема, как сделать так чтобы если вдруг мышка пролетает мувик то появляются сразу два события OVER и OUT. Tween начинает работать и тутже запускается другая функция с tween'ом наоборот. Тут то глюки и начинаются. Соответственно нужно дождаться чтобы закончился первый твин а потом через паузу в несколько секунд начался второй. Тут вот я и застопорился. Помогите плиз! |
|
|||||
|
.
|
import fl.transitions.Tween; import fl.transitions.easing.Bounce; import fl.transitions.TweenEvent; import flash.events.MouseEvent; import flash.events.IEventDispatcher; this.Clip1.addEventListener(MouseEvent.MOUSE_OVER, this.handler_mouseOverClip); function handler_mouseOverClip(event:MouseEvent):void { this.Clip1.removeEventListener(MouseEvent.MOUSE_OVER, this.handler_mouseOverClip); var tween:Tween = new Tween(event.currentTarget, "y", Bounce.easeOut, -125, 142, 1.5, true); tween.addEventListener(TweenEvent.MOTION_FINISH, this.handler_tweenOverComplete); } function handler_mouseOutClip(event:MouseEvent):void { this.Clip1.removeEventListener(MouseEvent.MOUSE_OUT, this.handler_mouseOutClip); var tween:Tween = new Tween(event.currentTarget, "y", Bounce.easeOut, 142, -125, 1.5, true); tween.addEventListener(TweenEvent.MOTION_FINISH, this.handler_tweenOutComplete); } function handler_tweenOverComplete(event:TweenEvent):void { // Remove listener to allow GC to destroy tween object (event.currentTarget as IEventDispatcher).removeEventListener(TweenEvent.MOTION_FINISH, this.handler_tweenOverComplete); this.Clip1.addEventListener(MouseEvent.MOUSE_OUT, this.handler_mouseOutClip); } function handler_tweenOutComplete(event:TweenEvent):void { (event.currentTarget as IEventDispatcher).removeEventListener(TweenEvent.MOTION_FINISH, this.handler_tweenOutComplete); this.Clip1.addEventListener(MouseEvent.MOUSE_OVER, this.handler_mouseOverClip); } Последний раз редактировалось dimarik; 19.06.2009 в 13:10. |
![]() |
![]() |
Часовой пояс GMT +4, время: 17:53. |
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | |
| Опции просмотра | |
|
|