Визначте, яку клавішу Enter натисніть


4

Чи є спосіб сказати, яка Enterклавіша була натиснута ? Для цього потрібен драйвер низького рівня чи щось подібне? Чи знає ОС, яка Enterбула натиснута?

Я в Windows, і я спробував Carnac, але він говорить лише мені, Enterнатиснули чи ні.


Схоже, це можливо за допомогою програмування, наприклад, stackoverflow.com/questions/8059177/…, і я підозрюю, що це означає, що Python також має подібний метод для диференціації, але я не встигаю перевірити, але, можливо, це дасть вам початок точка для вирішення проблеми Python та дослідження як такого stackoverflow.com/questions/33863921/… . . . Відзначте мене, коли / якщо ви отримаєте відповідь, мені подобається це питання.
Pimp Juice IT

Відповіді:


0

Якщо ви посилаєтесь на цифровий майданчик, скрипти в AutoHotkey будуть запускати / виявляти окремо для Enter та для NumPadEnter

Залежно від того, що ви хочете зробити, ви можете запустити їх окремо, але дозволити натискання клавіші перейти до оригінальної програми, використовуючи нахил перед визначенням гарячої клавіші, а потім здійснити подальші дії збоку (паралельно ) при натисканні клавіші на додаток (надіслати повідомлення, десь увійти та ін.)


0

Наскільки мені відомо, обидва клавіші введення мають однаковий код сканування ( VK_RETURN). Я думаю, що клавішу numpad можна визначити, перевіривши, lParamнаприклад, WM_KEYDOWNповідомлення.

Клавіші цифрових клавіатур, ймовірно, встановлять "розширений" біт (біт 24) на значення 1. Отже, операція AND (lParam & x1000000)перевірить цей біт.

https://msdn.microsoft.com/en-us/library/windows/desktop/ms646280(v=vs.85).aspx

Ось як це бачить Windows, але він може не піддаватися впливу багатьох програм у стилі клавіш.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.