![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Nov 2004
Сообщений: 8
|
Ситуация следующая.
Есть основной файл - за все что в нем будет твориться отвечает класс MainSystem следующего содержания: вызывается этот класс во фла следующим образом: На основной сцене находится кнопка за действие которой отвечает следующий класс EnterSystem: class Classes.ButtonSystem.EnterSystem extends MovieClip {
function EnterSystem() {
}
private function onRelease():Void {
// Как получить отсюда ссылку к основной сцене кроме такого способа,
// учитывая что основная сцена будет характеризоваться классом Classes.MainSystem?
trace(this._parent);
}
}
Можно было конечно задать поведение для кнопки и в основном классе но я хочу добиться полной независимости кнопки от класса MainSystem, чтобы весь код для нее лежал в соответствующем для неё классе. Надесюь доступно объяснил, всем спасибо кто вразумит и наставит на путь истинный. |
|
|||||
|
Регистрация: Jun 2006
Сообщений: 1,061
|
_root.startMainSystem
|
|
|||||
|
Ветеран форума
Регистрация: Jul 2006
Адрес: Грузия, Тбилиси
Сообщений: 2,675
|
this._parent, _root и прочая убогость не катит в классах.
по сабжу, второй класс нужно экстендить от первого, а первому нужно передавать ссылку на объект. |
|
|||||
|
Регистрация: Jun 2006
Сообщений: 1,061
|
Цитата:
а передавать ты как собрался? |
|
|||||
|
Ветеран форума
Регистрация: Jul 2006
Адрес: Грузия, Тбилиси
Сообщений: 2,675
|
class Classes.MainSystem {
private var _mc:MovieClip; // ссылка на объект
function MainSystem(mc:MovieClip):Void {
_mc = mc; // создаём ссылку
}
}
class Classes.ButtonSystem.EnterSystem extends MainSystem{
function EnterSystem() {
}
private function onRelease():Void {
trace(_mc);
}
}
писал на коленях, смысл я надеюсь понятен |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Использовать паттерн Синглтон.
screamge, работать не будет. |
|
|||||
|
Регистрация: Nov 2004
Сообщений: 8
|
Цитата:
Тогда по логике надо сделать класс который будет отвечать за действия при наведении и отведении и уже от него экстендить все эти кнопки а в самом классе кнопки прописывать действия при нажатии на кнопку, как тогда экстендить кнопки от основного класса, ведь множественное наследование не разрешено в AS2 ... Примерно так: class Classes.ButtonSystem.AnimationMainSystemButton extends MovieClip {
function AnimationMainSystemButton() {
}
private function onRollOver():Void {
}
private function onRollOut():Void {
}
}
|
|
|||||
|
Ветеран форума
Регистрация: Jul 2006
Адрес: Грузия, Тбилиси
Сообщений: 2,675
|
__etc, у меня сейчас нет возможности проверить. Где ошибка то?
|
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Цитата:
|
|
|||||
|
Регистрация: Jun 2006
Сообщений: 1,061
|
2screamge а то что ты написал конечно не убогость))))
boomerFlasher пользуй рут и не заморачивайся Последний раз редактировалось CCCPirate; 27.04.2007 в 17:56. |
![]() |
![]() |
Часовой пояс GMT +4, время: 09:40. |
|
|
« Предыдущая тема | Следующая тема » |
|
|