event.keyCode не работает для клавиши ввода - PullRequest
1 голос
/ 06 апреля 2011

Я прочитал, что код ввода должен быть 13. Однако при использовании

trace(event.keyCode);

другие клавиши будут отображаться, а клавиша ввода - нет. Это может быть мой компьютер или что-то? Использование клавиатуры MacBook Pro.

stage.addEventListener(KeyboardEvent.KEY_DOWN, entered);

function entered(event:KeyboardEvent):void {
    trace(event.keyCode);
    if (event.keyCode == Keyboard.ENTER){
    //or if (event.keyCode == 13){
        trace("enter button");
    }
}

т.е. Я не могу заставить это отследить "кнопку ввода" Также не заметил никакого кода, прослеживаемого для Ctrl. Alt Tab или Backpace

Ответы [ 4 ]

4 голосов
/ 06 апреля 2011

На самом деле, я полагаю, что никто здесь действительно не пробовал это ^^.

Мое предположение: вы запускаете это с помощью команды run movie (Cmd + Return). Если мои предположения верны, во Flash Application Bar (пока ваше приложение работает) перейдите в Commands-> Disable Keyboard shortcuts.

^^

Что происходит: Flash Player (или fpdebug) имеет некоторые сочетания клавиш, которые при нажатии действуют как сочетания клавиш для вспышки и не достигают вашего фильма. Enter - это ярлык для «Play Movie».

2 голосов
/ 06 апреля 2011

Вы компилируете это во Flash?
Если так, то это, вероятно, проблема ...

Flash Debug Player перехватывает некоторые нажатия клавиш.
Чтобы избавиться от этого, установите флажок «Отключить сочетания клавиш» в меню «Управление» проигрывателя.

Моя флешка на португальском, но вы должны легко ее найти.
enter image description here

0 голосов
/ 06 апреля 2011

Это почти наверняка проблема фокуса, поскольку другое приложение получает клавиши ввода вместо Flash.Вы используете это в браузере или автономном плеере?

0 голосов
/ 06 апреля 2011

Показывает ли первая трасса «13» при нажатии клавиши ввода? Или нажатие клавиши ENTER не вызывает никаких следов?

Я использовал почти тот же код в моем проекте, с той лишь разницей, что я слушаю KEY_UP вместо KEY_DOWN. Это имеет значение?

Существует еще одна возможность: возможно, какой-то другой объект также прослушивает события KEY_DOWN со сцены и предотвращает распространение этих событий на слушатель событий.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...