Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   MouseEvent.CLICK на нарисованный объект (http://www.flasher.ru/forum/showthread.php?t=146035)

Byrger 27.10.2010 00:32

MouseEvent.CLICK на нарисованный объект
 
Привет я нарисовал кнопочку закрытия окна которая должны при нажатии выполнять функцию removeMenu(в которой выполняется кучу removeChild())

Почему не вызывается функция removeMenu При клике по квадратику с крестиком который рисуется? :wacko:


Вот вызов и слушатель Эвента
Код AS3:

                        this.addCloseButton();
 
                        this.closeButton.addEventListener(MouseEvent.CLICK,removeMenu);

Вот сама кнопка:
Код AS3:

private function addCloseButton()
                {
                        this.closeButton = new Shape  ;
                        this.closeButton.graphics.beginFill(0x000000);
                        this.closeButton.graphics.lineStyle(NaN,0,1.0,true);
                        this.closeButton.graphics.drawRoundRect(this.sizeX + this.dx - 20,this.dy + 10,10,10,2);
                        this.closeButton.graphics.endFill();
 
                        this.closeButton.graphics.beginFill(0xFFFFFF);
                        this.closeButton.graphics.lineStyle(1,0xFFFFFF,1,false,LineScaleMode.VERTICAL,CapsStyle.NONE,JointStyle.MITER,10);
 
                        this.closeButton.graphics.moveTo(this.sizeX + this.dx - 18,this.dy + 12);
                        this.closeButton.graphics.lineTo(this.sizeX + this.dx - 12,this.dy + 18);
 
                        this.closeButton.graphics.moveTo(this.sizeX + this.dx - 12,this.dy + 12);
                        this.closeButton.graphics.lineTo(this.sizeX + this.dx - 18,this.dy + 18);
 
                        this.closeButton.graphics.endFill();
 
                        addChild(this.closeButton);
                }


iNils 27.10.2010 00:34

Уберите лестницу в форматировании кода.

Byrger 27.10.2010 00:36

все, забыл сказать что все действия производятся в классе с наследством от Sprite

i.o. 27.10.2010 00:56

Цитата:

Код AS3:

lineStyle(NaN,0,1.0,true);


Новый способ как не рисовать обводку?

Неизвестны значения переменных sizeX, dx, dy. Сделайте трэйсы. Возможно дело в них

Mur4ik 27.10.2010 01:09

По идее прокол в том что экземпляры Shape не реагируют на мышиные события.
Замените на Sprite и будет вам счастье.

Byrger 27.10.2010 01:18

Mur4ik, спасибо, помогло


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

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