Показать сообщение отдельно
Старый 08.06.2004, 07:55
nuran вне форума Посмотреть профиль Отправить личное сообщение для nuran Найти все сообщения от nuran
  № 3  
nuran

Регистрация: Apr 2003
Адрес: DC
Сообщений: 4,489
По умолчанию Re: Обращение к внешним функциям из класса

Цитата:
Оригинал написал(а) Geniot
Привет,

может я чё не так делаю??

В главном фрейме "завожу" класс:

import MyClass;
mw = new MyClass(this);
mw.start();
stop();

Класс:
class MyClass{
private static var ROOT_MC:MovieClip;
//constructor
function MyClass(rmc:MovieClip){
ROOT_MC = rmc;
}
public function start():Void{
ROOT_MC.nextScene();
}

}

По идее класс владеет ссылкой на рут и должен перевести управление к следующей сцене. Но этого не происходит. Также если в руте создать какую-нибудь функцию и попробовать её вызвать из класса это не сработает. За то можно изменять свойства объектов рута из класса. Например:
ROOT_MC.ok_button._visible = false;

но опять же нельзя навесить хэндлер на кнопки рута:
ROOT_MC.ok_button.onRelease = function(){
trace("ok clicked");
}
не работает

Вопрос: как вызывать функции рута или таймлайна рута из класса?
Ну ... может нужно было написать
Код:
class MyClass extends MovieClip{
Да ещё, я так и не понимаю, зачем писать

Цитата:
private static
ЗАЧЕМ? Ведь переменная становится тем типом, каким была первый раз вызвана, а это лишь ломание ГОЛОВЫ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
__________________
flash/flex/unity