!+vk41::
MsgBox, Вы нажали Alt+Shift+A(лат.) или Alt+Shift+Ф(рус.).
Return
Возможно ли подобное организовать на Python достаточно универсальным способом? Каким образом?
!+vk41::
MsgBox, Вы нажали Alt+Shift+A(лат.) или Alt+Shift+Ф(рус.).
Return
The gray Cardinalтакое окно получит только свои нажатия, а если нужно глобальные по виндой кроме как заюзать WinAPI вариантов кажется нет
А нельзя сделать скрытое окно GUI и обрабатывать нажатия в нём, более высокоуровневыми способами?
Хотя, наверное, такое окно не получит никаких нажатий…
# -*- coding: utf-8 -*-
import pythoncom, pyHook
import codecs, sys
outf = codecs.getwriter('cp866')(sys.stdout, errors='replace')
sys.stdout = outf
def OnKeyboardEvent(event):
if event.WindowName == None:
wnd = 'None'
else:
wnd = unicode(event.WindowName, 'cp1251')
print u'Окно: ', wnd
print u'Виртуальный код: ', event.KeyID
print u'Скан-код: ', event.ScanCode
print '=========='
return True # возврат True для посылки события другим обработчикам
hm = pyHook.HookManager() # создание hook manager
hm.KeyDown = OnKeyboardEvent # наблюдение за всеми событиями клавиатуры
hm.HookKeyboard() # установка hook'а
pythoncom.PumpMessages() # бесконечное ожидание