Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Перехватывать все нажатия клавиш (http://www.flasher.ru/forum/showthread.php?t=127554)

cooler_ua 16.07.2009 19:38

Перехватывать все нажатия клавиш
 
Добрый день.

Есть задача. Перехватывать и обрабатывать все нажатия клавиш.
Делаю так:

Код AS3:

addEventListener(KeyboardEvent.KEY_DOWN, key_function);

или так:

Код AS3:

this.addEventListener(KeyboardEvent.KEY_DOWN, key_function);

или так:

Код AS3:

stage.addEventListener(KeyboardEvent.KEY_DOWN, key_function);

Работае через раз. На сцене есть только спрайт и нескольок лейлблов. Если кликнул до этого на лейбл - работает если в пустое место - не работает.

В чем проблема?

iNils 16.07.2009 19:47

Для оформления своего кода, надо использовать теги [code][/code].

ldimat 16.07.2009 19:56

Код AS3:

stage.addEventListener(KeyboardEvent.KEY_DOWN, key_function);

^^^ должно работать, один клик на флешку нужен для фокусировки на нее, я так понимаю тестишь ты на страничке какойто?
проробуй тупо запустить .swf (не из среды flash) и проверь нажатия, должно ловить

evg1985 25.01.2011 20:43

Да, ldimat правильно говорит. Так будет работать

А кто сталкивался с тем, что в fullscreen в браузере не обрабатываются буквенно-цифровые (A-Z,0-9) кнопки. При этом все управляющие работают (Ctrl, Space ...)?

andrew911 25.01.2011 22:34

Цитата:

Сообщение от evg1985 (Сообщение 967867)
Да, ldimat правильно говорит. Так будет работать

А кто сталкивался с тем, что в fullscreen в браузере не обрабатываются буквенно-цифровые (A-Z,0-9) кнопки. При этом все управляющие работают (Ctrl, Space ...)?

http://help.adobe.com/en_US/ActionSc...3446FBEEB.html

Цитата:

Keyboard support in full-screen mode

When Flash Player runs in a browser, all keyboard-related ActionScript, such as keyboard events and text entry in TextField instances, is disabled in full-screen mode. The exceptions (the keys that are enabled) are:

Selected non-printing keys, specifically the arrow keys, space bar, and tab key

Keyboard shortcuts that terminate full-screen mode: Esc (Windows and Mac), Control-W (Windows), Command-W (Mac), and Alt-F4

These restrictions are not present for SWF content running in the stand-alone Flash Player or in AIR. AIR supports an interactive full-screen mode that allows keyboard input.

cleptoman 26.01.2011 08:04

Цитата:

один клик на флешку нужен для фокусировки на нее
это зачем это?

Код AS3:

stage.focus = stage

не?

Hidest 26.01.2011 14:04

Имхо в браузере так фокус на флешку не переведешь ))

mikhailk 26.01.2011 14:56

это пользователей от нас защищают. :)

Tails 26.01.2011 15:10

Цитата:

Сообщение от cleptoman (Сообщение 967973)
это зачем это?

Код AS3:

stage.focus = stage

не?

Нене, это непрокатит :)

Но както можно фокус на флешку автоматически вешать, не раз видел у америкосов. Скорее всего джава. Мож кто знает ?

mikhailk 26.01.2011 15:19

javaScript

но придется писать отдельно для ослика, отдельно для мозиллы, отдельно для оперы и т.д.
т.е., скрипт должен понимать, что за браузер (и какая версия) и соответствующим образом обращаться к элементу для установления фокуса

в общем, муторно и наверняка где-нибудь не отработает


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

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