Кнопка в кнопке.

То что касается флеша, но не касается ВКонтакте API. Например проблемы при создании прыгающего мячика.
Ответить
prinum
Сообщения: 19
Зарегистрирован: 24 июл 2012, 16:39

Кнопка в кнопке.

Сообщение prinum »

Есть мувик, реагирующий на мышку (при наведении - всплывает окно, при потере курсора - окно убирается), в этом окне есть кнопка при наведении на которую нужно ее подсветить. Получается, что при наведении на кнопку окно теряет курсор и исчезает...

Чтобы окно не исчезало, делаю:

Код: Выделить всё

 plashka.buttonMode = true;plashka.mouseChildren = false; 
Но тогда кнопка перестает работать (plashka.mouseChildren = false; - запрещает выбирать дочерние спрайты)... Получается замкнутый круг! Как же быть?
sanych_dv
Разработчик
Разработчик
Сообщения: 550
Зарегистрирован: 29 апр 2011, 01:52

Re: Кнопка в кнопке.

Сообщение sanych_dv »

Код: Выделить всё

 package{    import flash.display.MovieClip;    import flash.display.Sprite;    import flash.events.Event;    import flash.events.MouseEvent;        public class Main extends 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);                        var btn0:MovieClip = new MovieClip;            btn0.graphics.beginFill(0xFF0000, 1);            btn0.graphics.drawCircle(0, 0, 200);            btn0.graphics.endFill();            btn0.x = stage.stageWidth / 2;            btn0.y = stage.stageHeight / 2;            addChild(btn0);                        var btn1:MovieClip = new MovieClip;            btn1.graphics.beginFill(0xFFFF00, 1);            btn1.graphics.drawCircle(0, 0, 100);            btn1.graphics.endFill();            btn0.addChild(btn1);                        btn0.buttonMode = true;            btn0.mouseChildren = true;                        btn0.addEventListener(MouseEvent.ROLL_OVER, mouseEvents);            btn0.addEventListener(MouseEvent.ROLL_OUT, mouseEvents);                        btn1.addEventListener(MouseEvent.MOUSE_OVER, mouseEvents);            btn1.addEventListener(MouseEvent.MOUSE_OUT, mouseEvents);                }                private function mouseEvents(e:MouseEvent):void        {            trace(e.type);                        switch (e.type)            {                case "mouseOver":                     e.currentTarget.alpha = 0.5;                    break;                case "mouseOut":                     e.currentTarget.alpha = 1;                    break;                case "rollOver":                     e.currentTarget.alpha = 0.5;                    break;                case "rollOut":                     e.currentTarget.alpha = 1;                    break;            }        }        } } 
prinum
Сообщения: 19
Зарегистрирован: 24 июл 2012, 16:39

Re: Кнопка в кнопке.

Сообщение prinum »

Огромное спасибо, именно то, что и было нужно! Уже попробовал - все получилось, проблема была в разделении событий отдельно на ROLL и MOUSE!
Ответить