Просмотр полной версии : Обращение к объекту основного класса приложения
ladamalina
29.11.2009, 21:49
Вопрос от новичка.
Как обратиться к объекту основного класса приложения из какого-либо дополнительного класса? Например, чтобы изменить значение свойства основного класса.
Здесь, на форуме, была похожая тема - как вызвать метод основного класса "извне", но там немного не то, что мне нужно.
Можно с помощью событий.
Например:
public class Main extends Sprite{
private var childClass:ChildClass;
public function Main() {
this.childClass = new ChildClass();
this.childClass.addEventListener("event_name", this.customEventHandler);
}
private function customEventHandler(event:CustomEvent):void {
// Здесь делаем то, что нужно
}
}
public class ChildClass extends EventDispatcher{
public function ChildClass() {
}
private function someFunction():void {
// Делаем что-нибудь...
super.dispatchEvent(new Event("event_name")); // Отсылаем событие
}
}
ladamalina
29.11.2009, 23:53
Спасибо. А если у меня тот класс, из которого нужно обратиться, не может генерировать события, т.е. он не "extends EventDispatcher", а "extends Sprite"?
Спасибо. А если у меня тот класс, из которого нужно обратиться, не может генерировать события, т.е. он не "extends EventDispatcher", а "extends Sprite"?
Sprite может генерировать события, так как он сам является наследником EventDispatcher
можно через статичную переменную основного класса
Если есть гарантия, что экземпляр класса один (например мейн класс), то можно синглтоном... Ну в принципе Jewelz про это и говорит наверное :)
public static var self:Main;
public function Main() {
self = this;
}
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.