Форум 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=98988)

StreetPeople 26.07.2007 01:46

Вопрос по классам
 
Как сделать событие onComplite (чёт типа onLoad), для класса ClassName1 чтобы можно было сразу отреагировать на это событие - this.MC = MC;


// Файл класса ClassName1
Код:

class ClassName1
{
 private var MC:MovieClip;
 function ClassName( MC : MovieClip ){
  this.MC = MC;
 }

...??????????

}

// Файл FLA
Код:

var CN:ClassName1 = new ClassName1( Some_mc );

//ЧТОБЫ МОНА бЫЛО СДЕЛАТЬ ТАК
CN.onComplite = function (){
...
}


Это мне нужно, для того чтобы переменную MC можно было использовать в других дочерних классах

// Файл класса ClassName2
Код:

class ClassName2 extends ClassName1
{
 function ClassName2( ){
  trace(MC);
}}

Иначе MC будет === undefined :( поскольку записав в FLA файле

Код:

var CN:ClassName1 = new ClassName1( Some_mc );
var CN2:ClassName2 = new ClassName2( );

ClassName1.MC просто напросто не успеит присвоится ДО того как ClassName2.ClassName2( ) его использует!



:quiet: PS: Технические задания мне не писать

iNils 26.07.2007 08:20

Одним вопросом вы заработали сразу два плюса. Потом будет бан.

etc 26.07.2007 09:39

Используй статические свойства класса.

StreetPeople 26.07.2007 22:28

"статические свойства класса" - это как?
Не могли бы вы привести пример кода и/или дать ссылку, где я смогу найти пояснения.

etc 26.07.2007 23:02

Код:

class MyClass {
  public static var myInstance:AnotherClass;
}

Код:

MyClass.myInstance = new AnotherClass();
Потом можно обращаться к экземпляру AnotherClass через MyClass.myInstance.


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

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