![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Вот есть у нас флэшка с каким-то Document Class, допустим Main. На главной сцене располагается просто MovieClip с instanceName - myButton без привязки к какому-либо классу в библиотеке.
Как в классе обратиться к этому клипу? package {
import flash.display.Sprite;
import flash.display.MovieClip;
import flash.events.MouseEvent;
public class Main extends Sprite {
private var myButton:MovieClip;
public function Main() {
trace("ScreenCreateGame()");
this.myButton.addEventListener(MouseEvent.MOUSE_DOWN, pressButton);
}
private function pressButton(event:MouseEvent):void {
trace("PRESS BUTTON()");
}
}
}
|
|
|||||
|
Регистрация: Sep 2007
Сообщений: 36
|
private var myButton:MovieClip;
если вы добавили кнопку визуально, то это лишнее и имя myButton конфликтует с уже имеющимся элементом на поле. Если я не ошибаюсь. |
|
|||||
|
В AS2 все нормально было, есть элементы на сцене, объявил их в классе и работай с ними нормально. Придется через this["myButton"] обращаться что ли?
|
|
|||||
|
|
|
|||||
|
Если отключать в настройках automaticaly declare stage, то ошибка:
[Fault] exception, information=ReferenceError: Error #1056: Cannot create property myButton on Main А если через private var button:MovieClip = this.getChildByName('myButton') as MovieClip; то: 1061 Call to a possibly undefined method through a reference with static type. |
|
|||||
|
Регистрация: Sep 2007
Сообщений: 36
|
Попробуйте галку оставить и обращаться к объекту через this.myButton.
Если я правильно понимаю, эта установка декларирует объекты Stage в ваш класс. |
|
|||||
|
Нет, это вообще не вариант))) Меня Eclipse сразу раскусывет! Что за myButton спрашивает, говорит объявляй его. Типизация строгая! Это не глупый IDE...
|
|
|||||
|
Заработало, Eclipse перезапустил и заработало)))
|
|
|||||
|
Регистрация: Sep 2007
Сообщений: 36
|
я и сам не раз замечал, некоторые вещи во флэше появляются только после перезапуска. кнопки ОК не достаточно
![]() |
![]() |
![]() |
Часовой пояс GMT +4, время: 15:09. |
|
|
« Предыдущая тема | Следующая тема » |
|
|