Форум 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)
-   -   Работа с As 2.0 (http://www.flasher.ru/forum/showthread.php?t=135242)

Psycho Tiger 26.01.2010 16:10

Хм, Menu(...) - это вообще на кастинг в AS3 походит. Где new?
Код AS3:

menu = new Menu(...);

и updateItems() должна быть public, проверьте.

xjack 26.01.2010 16:14

А вот таким образом уже работает:
Код AS1/AS2:

 menu = Menu(attachMovie("Menu", "menu1", 0));
 menu.updateItems();

Но это если динамическое создание экземпляра. А как работать с уже созданным во fla?

dimarik 26.01.2010 17:17

Цитата:

Сообщение от xjack (Сообщение 882189)
Код AS1/AS2:

 var menu:Menu;
 menu = Menu(this["menu"]);
 menu.updateItems();


trace(this). Куда смотрит?

xjack 27.01.2010 02:22

Тут еще одна проблема появилась. Понадобилось загрузить xml-файл, в конструкторе главного класса пишу
Код AS1/AS2:

  xml = new XML();
  xml.ignoreWhite = true;
  xml.onLoad = xmlComplete;
  xml.load("Menu.xml");

Весь ужас в том что в xmlComplete, несмотря на то что она описана в главном классе, управление передается несчастному xml-объекту (trace(this) проверял).
И получается что из нее я не могу достучаться до методов главного класса,они просто не видны. В AS 3.0 вроде в аналогичных ситуациях все нормально работало.

Пока что удалось восстановить ссылку на его экземпляр с помощью _root.getInstanceAtDepth
Но хотелось бы как то по-человечески.

udaaff 27.01.2010 02:42

Используйте Delegate.


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

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