Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Как узнать размер сцены не из главного класса? (http://www.flasher.ru/forum/showthread.php?t=123163)

Pablo F 26.03.2009 00:32

Как узнать размер сцены не из главного класса?
 
Здравствуйте.
В AS2 объект Stage был глобальным, это позволяло любому экземпляру любого класса при необходимости узнавать размеры сцены и так или иначе на них реагировать. В AS3 ситуатция изменилась, размер сцены доступен лишь из главного класса.
Есть ли какая-то возможность экземпляру написанного мной класса узнать размер сцены никак не контактируя с главным классом?
Я объясню для чего мне это надо. Я хочу создать библиотечный символ (мувик), который пользователь, абсолютно ничего не знающий об AS, скопирует в свою библиотеку и разместит в нужном слое при создании какой-то своей анимации, предварительно разместив мои файлы классов рядом, в той же директории.
Мой мувик должен узнать размеры новой, незнакомой ему сцены и инициализироваться (нарисоваться) в соответствии с ними. Как эти размеры ему узнать?

__ant 26.03.2009 00:51

Ссылку можно получить в свойстве stage.
Но до тех пор пока объект не будет добавлен на сцену stage будет недоступен.
Для этого нужно подписаться на событие:

Код AS3:

addEventListener(Event.ADDED_TO_STAGE, init);
 
function init(e:Event):void {
  removeEventListener(Event.ADDED_TO_STAGE, init);
  trace(stage.stageWidth, stage.stageHeight);
}


Pablo F 26.03.2009 01:06

Спасибо, это именно то, что нужно :)


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

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