|
|
|||||
Регистрация: Jun 2010
Сообщений: 6
|
Проблема со слушателем клавиатуры
Всем добрый день.
Собственно изучаю AS3 на основе нескольких скачаных уроков, в процессе создания приложения вылезла ошибка. Исходник прилагается. Суть ошибки - в файле keys.as в строках 10-11 не знаю как правильно подойти к прослушивателям событий, ибо первоначальный вариант(оставил в комментариях к коду) со stage выдаёт null(точнее Error #1009: Не удается вызвать свойство или метод со ссылкой на объект "null"). Последний раз редактировалось Triton36; 28.06.2010 в 14:35. |
|
|||||
Ну, как бы, все верно и stage здесь и не нужен. При таком раскладе все работает без проблем? Я проверить не могу, ибо IDE заболела и из вредности отказывается вкомпиливать классы и трейсить. Бегло просмотрел код, ошибок не заметил, но у вас на ball нет фокуса, оттого он и не получает событие.
И да, у вас все в классах, что не может не радовать глаз после вопросов о кадрах. Но используйте типизацию переменных. Нормальный компилятор такое даже не скомпилит. Затем конструкторы пишутся с Большой Буквы, а в конце вызова конструктора принято писать круглые скобки, все же это вызов метода. И еще одно - как добавляете что-то на сцену, лучше в конструкторе (объекта gg в данном случае) прописать слушателя Event.ADDED_TO_STAGE, тогда и стейдж будет у него определен.
__________________
тут я Последний раз редактировалось КорДум; 28.06.2010 в 15:18. |
|
|||||
Регистрация: Jun 2010
Сообщений: 6
|
Вот основная поблема в том, что реакция на событие
keys.as не наступает. |
|
|||||
Регистрация: Jun 2010
Сообщений: 6
|
Наверно я скажу глупость, но лучше всё же уточнить.
Программно фокус ставится Т.е. на экземпляр класса. ball у меня главный класс, собственных экземпляров не имеет, значит появляется дополнительная проблема. Или можно ещё как-то присвоить к фокусу? Или имелось ввиду иное? Последний раз редактировалось Triton36; 28.06.2010 в 17:26. |
|
|||||
Регистрация: Jun 2010
Сообщений: 6
|
Заветная жёлтая рамка появилась вокруг шарика(gg который). Однако на команды с клавиатуры всё также не отвечает.
Последний раз редактировалось Triton36; 28.06.2010 в 19:10. |
|
|||||
Где вы такие уроки нашли, что вся логика нелогично и нерационально разнесена в классах? Я переделал для FD, закомментил ненужности и выяснил, что слушатели клавиатуры не вешаются на нужный объект, хотя по коду, вроде бы, на него вешается (я еле-еле разобрался в разноименных переменных, являющимися ссылками на одни и те же объекты, когда можно использовать одну статическую ссылку (синглтон так синглтон)). Парадокс. Необходимо срочно рационально структурировать весь код, поубирать дубликаты ссылок и вместо флешного твина обратить внимание на Tween Max/Lite.
__________________
тут я |
Часовой пояс GMT +4, время: 21:26. |
|
« Предыдущая тема | Следующая тема » |
|
|