![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Oct 2012
Сообщений: 23
|
Всем привет. Новичок в флеше, спасибо за понимание.
Я создаю объект: var ns_playback:NetStream; ns_playback = new NetStream(NCs); ns_playback.play(userInfo.enemy_sex + userInfo.enemy_id); video_playback = new Video(420, 336); video_playback.attachNetStream(ns_playback); Теперь по другому событию я хочу проверить, добавлен ли он на экран, чтобы его убрать. Если пишу просто removeChild - выдаёт ошибка в случае, если не было ранее addChild. Проверка на if(video_playback) - будет проверять, создан ли объект, а он у меня всегда создан, мне лишь надо показывать или скрывать данный блок по событию. Может можно как-то давать имя, чтобы потом делать уже проверку по имени? |
|
|||||
|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
Обычно делают так
или
__________________
Reality.getBounds(this); |
|
|||||
|
Регистрация: Oct 2012
Сообщений: 23
|
Что-то я делаю не так, видимо. Вот код:
var loader:Loader; function AddPhoto() { //if(loader) {loader = null;} if(this.contains(loader)) this.removeChild(loader); // Не работает. loader = new Loader(); loader.load(new URLRequest("/photo/full/picture.jpg")); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, cc); } function cc(e:Event) { var n_width = 460; var n_height = 360; if(loader.height > n_height) { loader.height = n_height; loader.scaleX = loader.scaleY; } if(loader.width > n_width) { loader.width = n_width; loader.scaleY = loader.scaleX; } loader.x = (stage.stageWidth - loader.width) / 2; addChild(loader); } |
|
|||||
|
Регистрация: Mar 2012
Адрес: г.Новосибирск
Сообщений: 381
|
вы пишите в кадре, и у вас this и stage указывают на stage. По этому можно и так и так.
|
|
||||||
|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
1.
Цитата:
2. Цитата:
3. Цитата:
Цитата:
4. Цитата:
__________________
Reality.getBounds(this); |
|
|||||
|
Цитата:
|
|
|||||
|
Цитата:
|
|
|||||
|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
Потому что стейдж не является частью Вашего приложения. Это родительский контейнер, управлять которым из детей, по понятиям ООП — не комильфо (настройки не в счет). Иерархически приложением является Документ-класс. Для того он и ОБЯЗАН быть наследником контейнера, чтобы все дети содержались в нем и не гуляли где ни попадя. Стейдж же представляет флэшплеер, проигрывающий Ваше приложение (Документ-класс). Не надо одновременно проигрывать в нем что-то еще.
Цитата:
Всего-то и нужно — создать структуру "слоев"-контейнеров заранее, и не нарушать ее, добавляя детей в контейнеры, предназначенные именно для них, и сохраняющие нужную глубину постоянно, как слои в IDE.
__________________
Reality.getBounds(this); |
![]() |
![]() |
Часовой пояс GMT +4, время: 08:27. |
|
|
« Предыдущая тема | Следующая тема » |
|
|