|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
Регистрация: Jul 2013
Адрес: Каскелен
Сообщений: 86
|
как добавить больше одного ребёнка на Stage?
пытаюсь понять что такое этот [object Stage], просто stage., root... как я понял Stage - это класс c типом DisplayObjectContainer (или расширяющий DisplayObjectContainer) который создаётся по-умолчанию при запуске основного класса приложения из FlashDevelop. Вот тестовый код:
package zoo.actionscript.stage { import as3Tutorial.scr.FloatingCont; import flash.display.Shape; import flash.display.Sprite; import flash.text.TextField; public class Main extends Sprite { private var _tF:TextField; private var _container:Sprite; private var _shape:Shape; private var _someClass:FloatingCont; public function Main() { addChild(_tF = new TextField()); addChild(_container = new Sprite()); addChild(_shape = new Shape()); addChild(_someClass = new FloatingCont("C://textForLoad.txt")); trace (stage.numChildren); trace (this.numChildren); } } } как добавить ещё одного ребёнка для класса Stage? чтобы stage.numChildren было больше 1. Добавлено через 15 минут sorry, дошло... значит stage - он всегда как бы один глобальный? у самих классов нет своего stage отдельного? у класса, расширяющего Sprite, например? Последний раз редактировалось nelco; 14.09.2015 в 06:10. |
|
|||||
Цитата:
На stage можно добавить какие-нибудь модальные окна с подтверждением действий и т.п., чтобы быть уверенным, что они поверх всего |
|
|||||
Вы путаете понятие stage(Область видимости) и DisplayList(Список отображения).
Каждый DisplayObjectContainer имеет свой DisplayList, в который можно добавлять DO/DOC. Stage - DisplayObjectContainer, это ВСЯ видимая область флешки. Если написать после инициализации, выведет [object Main]. Сам класс Main добавляется в корень видимой области. У каждого Sprite есть свой DisplayList. В Main: trace(this.numChildren);//0; trace(stage.numChildren);//1; trace(stage.getChildAt(0));//[object Main] this.addChild(new Sprite()); trace(this.numChildren); //1 trace(stage.numChildren); //1 trace(this.getChildAt(0)); //[object Sprite] stage.width stage.height Но они показывают размеры самого контейнера, а не всей области. Т.е. если за пределы флешки выходит какой-то объект, то размеры будут растянуты до него. Ну и, чтобы получать только размеры флешки как окна, были введены stage.stageWidth stage.stageHeight Ну и root вернёт вам главный класс(object Main). Но за весь опыт программирования я один раз пользовался этим свойством, когда писал в кадрах.
__________________
There is no thing in this world that is not simple. |
Часовой пояс GMT +4, время: 13:08. |
|
« Предыдущая тема | Следующая тема » |
Опции темы | |
Опции просмотра | |
|
|