Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Скажите как организовать плавное появление (http://www.flasher.ru/forum/showthread.php?t=148889)

motoroller 13.01.2011 19:12

Скажите как организовать плавное появление
 
Есть мувик на сцене по наведению хочется не просто visible
а допустим за пол секунды ...

Contemplator 13.01.2011 19:19

Цитата:

Сообщение от motoroller (Сообщение 964406)
Есть мувик на сцене по наведению хочется не просто visible
а допустим за пол секунды ...

alpha чем не подходит? =)

drnet_ua 13.01.2011 19:23

спросите гугль про TweenMax

motoroller 13.01.2011 19:27

Альфа и подходит
но чтобы не сразу а плавно ....

Roma84 13.01.2011 19:54

Цитата:

Сообщение от drnet_ua (Сообщение 964410)
спросите гугль про TweenMax

Для такого и TweenLite хватит, и даже TweenNano.

motoroller 13.01.2011 20:04

Код AS3:

                private function showMenu(event:MouseEvent):void {
                        TweenMax.to(menu, 1, {alpha:1});
 
                        //menu.visible=true;
                }
 
                private function hideMenu(event:MouseEvent):void {
                        TweenMax.to(menu, 1, {alpha:0});
                }

Странное поведение
при showMenu меню появляется сразу
а про hideMenu работает нормально ...
скажите в чем может быть проблема

Добавлено через 12 минут
Или может быть проблема в том что у меня мышка на объекта это функция срабатывает постоянно?

Добавлено через 13 минут
странное поведение:
Код AS3:

                private function showMenu(event:MouseEvent):void {
                        trace('xx') // выводит три раза :(
                        TweenLite.to(menu, 1, {alpha:1});
                }


Roma84 13.01.2011 20:57

Цитата:

Сообщение от motoroller (Сообщение 964415)
Добавлено через 13 минут
странное поведение:
Код AS3:

                private function showMenu(event:MouseEvent):void {
                        trace('xx') // выводит три раза :(
                        TweenLite.to(menu, 1, {alpha:1});
                }


На какое событие вешаешь? Надо на RollOver/RollOut. И еще может TweenLite.killTweensOf(menu); добавить надо.

DZHETIGAPA 14.01.2011 00:42

Предыдущий комментарий имеет истину насчет TweenLite.killTweensOf(menu).

Но, думаю, проблема в событиях. У меня аналогичный код работает нормально.

drnet_ua 14.01.2011 11:15

Вложений: 1
Код AS3:

package 
{
        import com.greensock.TweenLite;
        import flash.display.Sprite;
        import flash.events.Event;
        import flash.events.MouseEvent;
 
        /**
        * ...
        * @author drnet_ua
        */

        public class Main extends Sprite
        {
 
                private var btn:Sprite
 
                public function Main():void
                {
                        if (stage) init();
                        else addEventListener(Event.ADDED_TO_STAGE, init);
                }
 
                private function init(e:Event = null):void
                {
                        removeEventListener(Event.ADDED_TO_STAGE, init);
                        // entry point
 
                        btn = new Sprite();
                        btn.graphics.beginFill(0xFF0000);
                        btn.graphics.drawRoundRect(0, 0, 200, 50, 15, 15);
                        btn.graphics.endFill();
 
                        btn.x = 100;
                        btn.y = 100;
 
                        btn.addEventListener(MouseEvent.ROLL_OVER, onRollOver);
                        btn.addEventListener(MouseEvent.ROLL_OUT, onRollOut);
                        btn.addEventListener(MouseEvent.CLICK, onClick);
 
                        btn.alpha = .2;
 
                        addChild(btn);
 
                }
 
                private function onRollOver(e:MouseEvent):void {
                        TweenLite.to(btn, 1, { alpha:1 } );                       
                }
 
                private function onRollOut(e:MouseEvent):void {
                        TweenLite.to(btn, 1, { alpha: .2 } );                       
                }
 
                private function onClick(e:MouseEvent):void {
 
                }
        }
 
}

все прекрасно работает.

по личному опыту - твинМакс как-то веселее работает в случае если в процессе одного твина обьекту добавляется второй :)

motoroller 14.01.2011 17:00

Спасибо большое


Часовой пояс GMT +4, время: 14:39.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.