![]() |
|
||||||||||
|
|||||
|
[+3 18.04.11]
Регистрация: Dec 2010
Сообщений: 342
|
Благодарю всех за ответы и комменты. Начало доходить. Будут еще вопросы - буду сюда обращаться.
У меня есть вопрос:где можно найти открытый код всех классов AS3? |
|
|||||
|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
DZHETIGAPA, одна тема - один вопрос. Относитесь к Теме не как к посиделкам за чаем, а как к разделу в Справочнике. Удачи.
__________________
Reality.getBounds(this); |
|
|||||
|
[+3 18.04.11]
Регистрация: Dec 2010
Сообщений: 342
|
Вот в конкретном примере возникли проблемы с событием.
Есть два класса. В первом классе Menu3D располагается скроллер, менюшки, контент. А второй класс ScrollerClass и есть СКРОЛЛЕР. Мне нужно, чтобы при нажатии на контент(в классе Menu3D) в классе ScrollClass вызвалось это событие. Вот мои действия. //класс Menu3D public static const SCROLL:String = "scroll"; //другой код private function clickContent(e:MouseEvent):void { timeline.reverse(); dispatchEvent(new Event(Menu3D.SCROLL)); } |
|
|||||
|
clickContent - сюда трейс вставь и погляди, а то судя по коду должно работать.
Возможно событие клика не происходит, тогда уж надо смотреть как подписался на клик.
__________________
Кто к нам с чем для чего - тот у нас того от того. |
|
|||||
|
[+3 18.04.11]
Регистрация: Dec 2010
Сообщений: 342
|
Событие клика работает как надо. Еще один нюанс, про который не сказал. ScrollClass изначально помещен в класс-библиотеку Lib. Там ему задается статическая публичная переменная. Через эту переменную я и переношу скролл в класс Menu3D.
//класс Lib public static function scrollBar(n:int):void { scroll = new FullScreenScrollBar(massivCon[n], massivContent[n], 0x000fff, 0xff4400, 0xffffff, 15, 15, 4, true); } public static function destroyScroll():void { scroll = null; } Добавлено через 6 минут Заменил статические переменные просто публичными - ничего не изменилось. Событие клика работает, но мое событие нет. |
|
|||||
|
А мне вот странно, почему не придрались к этой строке:
Ни бабблов, ни канселябл. @Wolsh: Цитата:
Цитата:
Поэтому я ратую "за" при создании подобных эвентов. Даже те, которые в данный момент ничего не переносят. Но конкретно в этом случае я вообще ратую за использование Event со стандартными константами Event. Абстракция, друзья мои. Типа
__________________
Тут мужик танцует и поёт про флэш |
|
|||||
|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
Цитата:
Цитата:
Цитата:
Добавлено через 10 часов 42 минуты Сам язык подсказывает, что "логично" а что нет. MouseEventRollOut.ROLL_OUT выглядит совершенно нелогично. Любое событие с единственным типом содержит в себе какое-то несовершенство. Хотя конечно возможны исключения. Язык подсказывает - есть объект-источник событий. Есть событие, источником которого является объект. Иногда объект генерит разные типы событий. Но Лётчик генерит СобытиеЛётчика, а не СобытиеОфициантки. Любое событие "от лётчика" - это СобытиеЛётчика. Оно может быть разных типов - СобытиеЛётчика.Я_УСНУЛ, СобытиеЛётчика.Я_НАЖРАЛСЯ. Но это событие - Лётчика, вы можете передавать в нем показания приборов или температуру тела на момент события. Официантка тоже может уснуть, но в ее событии, подозреваю, будут совсем другие параметры. Подход, о котором вы говорите - создавать КЛАСС на каждый ТИП события, т.е. СобытиеЛетчикНажрался.ЛЁТЧИК_НАЖРАЛСЯ, СобытиеЛётчикУснул.ЛЁТЧИК_УСНУЛ. По-моему, эти "синтаксисы" говорят сами за себя. Нет такого объекта "летчик нажрался", который является источником события "ЛЁТЧИК_НАЖРАЛСЯ". Это УЖЕ и есть событие. Событие, источником которого является Летчик.
__________________
Reality.getBounds(this); |
![]() |
![]() |
Часовой пояс GMT +4, время: 16:39. |
|
|
« Предыдущая тема | Следующая тема » |
|
|