Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2004.09.12;
Скачать: [xml.tar.bz2];

Вниз

Код клавиши   Найти похожие ветки 

 
Mihey_temporary ©   (2004-08-23 23:41) [0]

Не получается обработать нажатие клавиши "~" - той, что под Esc и над Tab. Какой у неё виртуальный код, а то не нашёл в SDK.


 
KilkennyCat ©   (2004-08-24 00:17) [1]

А у нее нет кода. У всех есть, а у нее нет. Именно так и определяется ее нажатие: если клавиша нажата, а кода нет, значит, именно эта и нажата. Таким образом была получена возможность обработки еще одной клавиши без увеличения разрядности кода. Этот способ запатентован американцами, получили они его при изучении разбитой тарелки инопланетян, поэтому он страшно засекречен и в SDK его не публикуют. Всех, кто его знает, периодически отстреливают. Ой, что это за красная точка на мониторрррррррррррррррррррррррррррррррррррррррррррр


 
Григорьев Антон ©   (2004-08-24 17:40) [2]

Специально для тебя, по старой дружбе :)) открою секретный способ получения кода любой клавиши: пишешь программу, которая ловит OnKeyPress и выводит код клавиши, например, в Label. Запускаешь программу, наживаешь интересующую тебя клавишу и смотришь, какой код нарисовался. Только не забудь потом сделать низкоуровневое форматирование винчестера, чтобы никто другой не смог узнать этот секретный способ!


 
reticon ©   (2004-08-24 17:45) [3]

Удалено модератором
Примечание: Выражения выбираем


 
antonn ©   (2004-08-24 17:47) [4]

А мы без секретов код предоставим:

if GetAsyncKeyState(192)=0 then label1.caption:="~" else  label1.caption:="no";

В KeyDown или куда еще...


 
Mihey_temporary ©   (2004-08-24 17:48) [5]


> KilkennyCat ©   (24.08.04 00:17) [1]


Я-я...


> Григорьев Антон ©   (24.08.04 17:40) [2]


Хотел всё же ввести поддержку +++++++10 и написать грамматику, но теперь точно не сделаю назло.


 
Mihey_temporary ©   (2004-08-24 17:49) [6]

Угу, 129-ая, точно. Спасибо.


 
antonn ©   (2004-08-24 17:50) [7]

192


 
Nous Mellon ©   (2004-08-24 17:55) [8]

А не 29?


 
Mihey_temporary ©   (2004-08-24 17:58) [9]

Ну да, только щас заметил ошибку.


 
antonn ©   (2004-08-24 17:59) [10]


> А не 29?

На тильде? У меня 192.
Поправка [4]:
if GetAsyncKeyState(192)=0 then label1.caption:="NO" else  label1.caption:="~";


 
Nous Mellon ©   (2004-08-24 18:02) [11]

Я не очень понял нас интересует Scan Code?
Если да то Spy ++ говорит что 29. Это HEX
41 в Dec. Тоже самое говорит MSDN.


 
antonn ©   (2004-08-24 18:04) [12]

Если честно, не знаю что их интересует. Знаю что мой код работает. Я таким макаром всю клаву ловлю. И мыша тоже.


 
Nous Mellon ©   (2004-08-24 18:08) [13]


> Если честно, не знаю что их интересует. Знаю что мой код
> работает. Я таким макаром всю клаву ловлю. И мыша тоже.

Ловить конечно интересно но доки на что?


 
Nous Mellon ©   (2004-08-24 18:22) [14]

Да все верно
Клавиша    Код    
VK_OEM_3  0C0h  
Что есть 192


 
Григорьев Антон ©   (2004-08-24 18:24) [15]


> Nous Mellon ©   (24.08.04 18:08) [13]
>
> > Если честно, не знаю что их интересует. Знаю что мой код
>
> > работает. Я таким макаром всю клаву ловлю. И мыша тоже.
>
> Ловить конечно интересно но доки на что?


Если на клетке с удавом написано "слон", не верь глазам своим (с) Козьма Прутков

Вообще, есть ANSI-код символа, и есть скан-код клавиши. По-моему, вы просто перепутали эти понятия.


 
Mihey_temporary ©   (2004-08-24 18:28) [16]


> Вообще, есть ANSI-код символа, и есть скан-код клавиши.
> По-моему, вы просто перепутали эти понятия.


Ага, напутали ANSI с ASCII.


 
antonn ©   (2004-08-24 18:31) [17]


> По-моему, вы просто перепутали эти понятия.

Я бы даже сказал, что я знаю только одно понятие, и о втором понятия не имею:)


 
Григорьев Антон ©   (2004-08-24 18:36) [18]


> Mihey_temporary ©   (24.08.04 18:28) [16]
>
> > Вообще, есть ANSI-код символа, и есть скан-код клавиши.
>
> > По-моему, вы просто перепутали эти понятия.
>
>
> Ага, напутали ANSI с ASCII.


Та система кодировки, которая используется в Windows, называется ANSI. Она включает совпадает с ASCII только для первых 128-и символов и включает в себя понятие кодовой страницы, которого нет в ASCII. И применение термина ANSI в данной ситуации абсолютно корректно. А если ты не знаешь, что такое ANSI, имей ума достаточно хотя бы для того, чтобы не выставлять так напоказ своё невежество.


 
Mihey_temporary ©   (2004-08-24 18:39) [19]

OnKeyPress + F1... Никакой ANSI и не пахнет.


 
Суслик ©   (2004-08-24 18:42) [20]

Эээ Михаил вы типа этта послушали бы человека. А?


 
Mihey_temporary ©   (2004-08-24 18:45) [21]


> Суслик ©   (24.08.04 18:42) [20]


Вот нажму я букву "ф". Как же я получу её ANSI-код в OnKeyPress??


 
Nous Mellon ©   (2004-08-24 18:47) [22]


> Вообще, есть ANSI-код символа, и есть скан-код клавиши.
> По-моему, вы просто перепутали эти понятия.

Да. Но в итоге исправился. Чего обсуждаем то?


 
Игорь Шевченко ©   (2004-08-24 18:47) [23]

Mihey_temporary ©   (24.08.04 18:45) [21]


> Вот нажму я букву "ф". Как же я получу её ANSI-код в OnKeyPress??


Ord(Key)?


 
Mihey_temporary ©   (2004-08-24 19:03) [24]

Да, я не прав. OnKeyPress срабатывается на все клавиши, которые теоретически могут вывести символ ASCII, но не обязательно должны это делать в данный момент.



Страницы: 1 вся ветка

Форум: "Потрепаться";
Текущий архив: 2004.09.12;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.5 MB
Время: 0.033 c
14-1093326200
Kerk
2004-08-24 09:43
2004.09.12
Безграмотные программисты Microsoft....


3-1092680411
Java73
2004-08-16 22:20
2004.09.12
Проблема с выводом данных


8-1086939942
gear
2004-06-11 11:45
2004.09.12
WaveInOpen и ACM проблема!


1-1093410172
TankMan1
2004-08-25 09:02
2004.09.12
Как запустить приложение с параметром? :)


8-1088161023
SeVa
2004-06-25 14:57
2004.09.12
Быстрая отрисовка на Canvas





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский