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

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

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

Регистрация: Jun 2012
Сообщений: 31
По умолчанию AS3 Не всегда работает клавиатура

Здравствуйте. Есть ролик с несколькими кадрами.
На экране пару кнопок и код для изменения переменных при нажатии на клавиатуре стрелочек.
Проблема вот какая: все работает, потом жму кнопку для перехода на другой frame и сама кнопка исчезает. Тут перестают работать стрелочки, пока не нажму на пустое поле во flash. После все опять работает.
(проблема возникает в любом случае при исчезновении нарисованной кнопки после нажатия)

Можно как-нибудь исправить это (чтобы стрелки работали всегда)?


Код AS3:
stage.addEventListener(KeyboardEvent.KEY_DOWN,reportKeyDown); 
stage.addEventListener(KeyboardEvent.KEY_UP,reportKeyUp); 
 
function reportKeyDown(event:KeyboardEvent):void 
{ 
//кнопка нажата
	if (event.keyCode == 38) {perup=1;};
	if (event.keyCode == 40) {perdown=1;};
	if (event.keyCode == 37) {perleft=1;};
	if (event.keyCode == 39) {perright=1;};
};
 
function reportKeyUp(event:KeyboardEvent):void 
{ 
//кнопка отпущена
	if (event.keyCode == 38) {perup=0;};
	if (event.keyCode == 40) {perdown=0;};
	if (event.keyCode == 37) {perleft=0;};
	if (event.keyCode == 39) {perright=0;};
}

Старый 28.04.2015, 21:27
undefined вне форума Посмотреть профиль Отправить личное сообщение для undefined Найти все сообщения от undefined
  № 2  
Ответить с цитированием
undefined

Регистрация: Oct 2006
Сообщений: 2,282
попробуйте во всех кадрах в самом начале прописать
Код AS3:
stage.focus=stage;

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

Регистрация: Jun 2012
Сообщений: 31
Не совсем помогает, проблема в том что кнопки могут убираться без смены frame.

Старый 28.04.2015, 23:13
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 4  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Цитата:
кнопки могут убираться без смены frame
То есть убираться кодом. Ну вот после removeChild() и верните фокус стейджу. Или перед.
Вобщем, после нажатия кнопки (она захватывает фокус на себя, а после удаления стейдж не считает ее частью себя и не реагирует).
__________________
Reality.getBounds(this);

Старый 29.04.2015, 20:01
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 5  
Ответить с цитированием
dimarik
.
 
Аватар для dimarik

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
Похоже? http://www.flasher.ru/forum/blog.php?b=627
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

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

Теги
KeyboardEvent , клавиатура , кнопки

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

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


 


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


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