Author Topic: Статус триггерных клавиш «Scroll Lock», «Num Lock», «Caps Lock»  (Read 1344 times)

0 Members and 1 Guest are viewing this topic.

John Smith

  • Jr. Member
  • **
  • Posts: 18
  • Karma: 1
    • View Profile
Здравствуйте. Как можно узнать состояние триггерных клавиш, таких как «Scroll Lock», «Num Lock», «Caps Lock»? Я пытался использовать Hook-plugin, однако он генерирует событие о нажатии или отпускании клавиш (например, Hook.Scroll или Hook.Scroll.Up), но он не сообщает о состоянии триггреных клавиш «On/Off».

Aniv_D

  • Jr. Member
  • **
  • Posts: 42
  • Karma: 10
    • View Profile
Здравствуйте. Как можно узнать состояние триггерных клавиш, таких как «Scroll Lock», «Num Lock», «Caps Lock»? Я пытался использовать Hook-plugin, однако он генерирует событие о нажатии или отпускании клавиш (например, Hook.Scroll или Hook.Scroll.Up), но он не сообщает о состоянии триггреных клавиш «On/Off».

штатными средствами вроде нету возможности проверить состояние клавиш, но есть замечательный плагин питона PY.
вот с Caps Lock для примера тебе.
Code: [Select]
def get_capslock_state():
    import ctypes
    hllDll = ctypes.WinDLL ("User32.dll")
    VK_CAPITAL = 0x14
    return hllDll.GetKeyState(VK_CAPITAL)
result = get_capslock_state()
последним результатом получишь 0 или 1 (выкл или вкл соответственно)
для других твоих клавиш:
VK_NUMLOCK = 0x90
VK_SCROLL = 0x91
« Last Edit: January 01, 2020, 02:48:43 PM by Aniv_D »

John Smith

  • Jr. Member
  • **
  • Posts: 18
  • Karma: 1
    • View Profile
Большое спасибо. Закинул ваш скрипт в простенький тест. Всё работает. Теперь мне предстоит более подробно изучить работу с плагином PY. Честно говоря не думал, что для решения такой простой задачи понадобится Python. С Новым Годом вас  :)

Aniv_D

  • Jr. Member
  • **
  • Posts: 42
  • Karma: 10
    • View Profile
Эт хорошо что и решение оказалось не таким уж и сложным, в пару++ строк кода)
Если возникнут затруднения, то не стесняйся спрашивай))
хорошо когда заинтересовывающихся прибавляется. особенно русскоязычных, а то уж слишком мало нас осталось, все или сами по себе или наигрались и забросили это дело.
и тебя с Новым годом.

jitterjames

  • Administrator
  • Hero Member
  • *****
  • Posts: 7714
  • Karma: 116
    • View Profile
    • VoxCommando
Thanks for helping out Aniv-D!

Happy New Year.