Просмотр полной версии : [keys] left shift & right shift
Поковырял поиск - видимо никто этим не заморачивался.
Цель: отлавливать нажатия левого и правого shift'ов с клавиатуры и выполнять соответствующие КАЖДОМУ shift'у отдельные действия. На сколько я понимаю, у shift'а (левого и правого) один и тот же ASCII код. Это поставило меня в тупик. Что делать?
Отлавливать чем-нибудь сторонним, если получится.
Сам флеш не при делах.
флешка будет броузерная.
JS, VB?
Я думаю, VB.
JS сомнительно, что такие ньюансы отловит.
Key.addListener(this);
function onKeyDown(){
if(Key.isDown(Key.SHIFT)){
trace( Key.isDown(160) ? "left" : "right");
}
}
Круто! Надо было отлавливать isDown :D
Лень было экспериментировать. Практика превыше всего.
Только не понятно, причем тут неразрывный пробел или для клавиатуры код 160 что-то другое?
да как бы все логично: shift отдаeт/генерит не один, а два кода, второй может и совпадать с чем угодно..
Интересно, а как ты получил 160? Трейс getCode выдает 16 всегда.
Все понял. Вот дополнительные коды для shift и ctrl
shift left 160
shift right 161
ctrl left 162
ctrl right 163
просто перебором
function onEnterFrame(){
for(var i=0;i<256;i++) if (Key.isDown(i)) trace(i);
}
Понятно, метод тыка, значит :D
Что ж, хороший ход :D
Респект.
Почти также :)
Key.addListener (this);
function onKeyDown () {
if (Key.isDown (16) || Key.isDown (17)) {
for (var i = 0; i < 255; i++) {
if (Key.isDown (i)) {
trace (i);
}
}
}
}
А true зачем? Просто для прикола? :D
Убрал, это рудимент от первоначального моего кода.
Все понял. Вот дополнительные коды для shift и ctrl
shift left 160
shift right 161
ctrl left 162
ctrl right 163Тогда понятно :umnik2:
А я тоже на трейсе подкололся, который код 16 выводил для обоих shift'ов! :D
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.