Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   определения пользовательских событий в классе (http://www.flasher.ru/forum/showthread.php?t=65535)

Lex1 12.06.2005 17:00

определения пользовательских событий в классе
 
Hi, all! У меня такая проблема - например есть класс ball, в этом классе есть метод который attach`ит на сцену картинку мячика. Как зделать метод который удалял бы картинку со сцены при нажатии клавиши мыши в любой точке сцены?? Помогите плз...
ps - ответ на этот вопрос даже к книжке Колина Мука ненашол :(

Nirth 12.06.2005 17:05

removeMovieClip();

Lex1 12.06.2005 17:09

Nirth, ты непонял мне нужно отследить счелчок мыши! Про удаление ресунка это я так к примеру...

Nirth 12.06.2005 17:22

onMouseDown

Lex1 12.06.2005 17:47

Ну и как ты себе представляеш эту функцию в классе??
function ball(){ //новый класс
this.****; //Какие нибудь методы и свойства
this.onMouseDown = function(){****} //Мне кажется это рабоать не будет!!
}
Мне нужно определить пользовательское событие для класса!!

Nirth 12.06.2005 17:55

Код:

class com.onorange.helping.Ball extends MovieClip
{
        //Properties
        private var ball_mc : MovieClip
        //Methods
        public function Ball ()
        {
                this.draw ();
                this.initMouse ();
        }
        public function draw () : Void
        {
                this.createEmptyMovieClip ("ball_mc", this.getNextHighestDepth ());
                this.ball_mc.lineStyle (40, 0xFF0000);
                this.ball_mc.lineTo (.5, 0);
                this.ball_mc._y = 35;
        }
        private function initMouse () : Void
        {
                this.onMouseDown = function ()
                {
                        this.ball_mc.removeMovieClip ();
                }
        }
}

Если хочешь создать свое событие почитай в хелпе про EventDispatcher

Lex1 12.06.2005 17:59

Nirth, большое спасибо, это вроде то что надо! Только вот нюанс я програмлю на AS1, как это будет смотрется на нем??

Nirth 12.06.2005 18:02

вопрос такой, а нафиг тебе классы на AS1 ???
А вообще не имею понятия, на AS1 не кодил полтора года.
вариант с созданием своих собственных событий
Код:

import mx.events.EventDispatcher;
class com.onorange.helping.Ball extends MovieClip
{
        //Properties
        public var addEventListener, removeEventListener : Function;
        private var dispatchEvent : Function
        private var ball_mc : MovieClip
        //Methods
        public function Ball ()
        {
                EventDispatcher.initialize (this);
                this.addEventListener ("ballGone", this);
                this.draw ();
                this.initMouse ();
        }
        public function draw () : Void
        {
                this.createEmptyMovieClip ("ball_mc", this.getNextHighestDepth ());
                this.ball_mc.lineStyle (40, 0xFF0000);
                this.ball_mc.lineTo (.5, 0);
                this.ball_mc._y = 35;
        }
        private function initMouse () : Void
        {
                this.onMouseDown = function ()
                {
                        this.dispatchEvent (
                        {
                                type : 'ballGone'
                        });
                        this.ball_mc.removeMovieClip ();
                }
        }
}


Lex1 12.06.2005 18:06

ok! Спасибо...понял...


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

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