Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 21.06.2008, 23:58
NewFolder вне форума Посмотреть профиль Отправить личное сообщение для NewFolder Найти все сообщения от NewFolder
  № 1  
Ответить с цитированием
NewFolder
 
Аватар для NewFolder

Регистрация: Nov 2006
Сообщений: 155
По умолчанию Document class создается не первым

Простая флешка. На сцене находится только один муви клип. Он при создании должен подписаться на событие главного класса. Так вот у клипа конструктор вызывается перед конструктором Document class'a, что приводит к рантайм ошибке.

На сколько это нормально? И что делать в таких ситуациях?
__________________
Нет ничего невозможного

Старый 22.06.2008, 00:43
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 2  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
1. подписывать из Документ-класса (криво, но идея использования объектов на сцене + документ класса сама по себе кривая...)
2. слушать ADDED_TO_STAGE у стейджа, если таргет события == Документ-класс - подисываться... (ну тоже красивым решением не назовешь...)
__________________
Hell is the possibility of sanity

Старый 22.06.2008, 03:21
NewFolder вне форума Посмотреть профиль Отправить личное сообщение для NewFolder Найти все сообщения от NewFolder
  № 3  
Ответить с цитированием
NewFolder
 
Аватар для NewFolder

Регистрация: Nov 2006
Сообщений: 155
Цитата:
Сообщение от wvxvw Посмотреть сообщение
идея использования объектов на сцене + документ класса сама по себе кривая...
Чем обосновывается кривизна идеи?
__________________
Нет ничего невозможного

Старый 22.06.2008, 22:14
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 4  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
Потому, что Документ-класс должен инициализироваться первым, иначе логика приложения нарушается.
Например, если нужно "перезапустить" все приложение - но, если его запуск зависел от какого-то клипа на сцене, который мог быть удален в процессе работы - никакого перезапуска не получится.
__________________
Hell is the possibility of sanity


Последний раз редактировалось wvxvw; 22.06.2008 в 22:16.
Старый 23.06.2008, 01:41
NewFolder вне форума Посмотреть профиль Отправить личное сообщение для NewFolder Найти все сообщения от NewFolder
  № 5  
Ответить с цитированием
NewFolder
 
Аватар для NewFolder

Регистрация: Nov 2006
Сообщений: 155
Цитата:
Сообщение от wvxvw Посмотреть сообщение
Потому, что Документ-класс должен инициализироваться первым, иначе логика приложения нарушается.
Например, если нужно "перезапустить" все приложение - но, если его запуск зависел от какого-то клипа на сцене, который мог быть удален в процессе работы - никакого перезапуска не получится.
Так в этом то и вопрос: почему документ класс создается не первым

Объясню ситуацию, чтобы было нагляднее.
Есть эмулятор телефона. На нем есть экран и клавиатура. Экран при создании должен подписаться на события клавиатуры. К клавиатуре он пытается достучаться через документ класс (он ведь главный, и содержит этот клип). Но почему-то экран создается быстрее самого документ класса, что и приводит к ошибке.

Проблему то решил созданием объектов в конструкторе документ класса. но все равно этот вопрос меня интересует. Как-то нелогично получается.
__________________
Нет ничего невозможного

Старый 23.06.2008, 02:21
badun вне форума Посмотреть профиль Отправить личное сообщение для badun Найти все сообщения от badun
  № 6  
Ответить с цитированием
badun

Регистрация: Dec 2007
Сообщений: 269
Пусть стучится до класса документа по ADDED или ADDED_TO_STAGE.
Логичнее было бы если из конструктора класса документа не были бы доступны мувики созданные в среде?

Старый 23.06.2008, 02:58
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 7  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
Ну... а мне почем знать почему он раньше создается? =) Т.е. почему - я примерно могу себе представить, а вот зачем так сделано - не знаю =) Мало ли фич, которыми лучше не пользоваться не смотря на то, что технически их сделать никакого труда не составит =)
badun:
не, логичнее было бы, если бы мувики созданные в среде создавались последовательно после того, как будет создан "главный" мувик - он же документ класс =) они ж по идее его "дети" как ж это они вперед "батька"? =)
__________________
Hell is the possibility of sanity

Старый 23.06.2008, 03:31
badun вне форума Посмотреть профиль Отправить личное сообщение для badun Найти все сообщения от badun
  № 8  
Ответить с цитированием
badun

Регистрация: Dec 2007
Сообщений: 269
Если бы они создавались после главного мувика, они не были бы доступны в его конструкторе. Как в таком случае достучаться до них, ловить каждого на стадии bubbling события ADDED?

Старый 23.06.2008, 04:11
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 9  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
Чесно - я вообще за рантайм ошибку при создании чего бы то ни было "не проконсультировавшись" с Документ классом с примерно таким текстом: "Alas! 3999(a): Ye shall not reap yet thy sow!" =) Но, если это неизбежно - ну, да... слушать когда добавили... а что?
*Благо наш QА не подозревает о существовании дебаг плеера... *
__________________
Hell is the possibility of sanity


Последний раз редактировалось wvxvw; 23.06.2008 в 04:22.
Старый 23.06.2008, 04:57
badun вне форума Посмотреть профиль Отправить личное сообщение для badun Найти все сообщения от badun
  № 10  
Ответить с цитированием
badun

Регистрация: Dec 2007
Сообщений: 269
по-моему все-таки проще чтобы каждый ребенок слушал когда его добавили ))

Создать новую тему Ответ Часовой пояс GMT +4, время: 00:46.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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