Mappa Rotella di scorrimento ai pulsanti?
-
11-09-2019 - |
Domanda
Voglio fare la rotella del mouse su e giù per inviare il + e - chiavi, rispettivamente, - direttamente al sistema operativo, come se venisse dalla tastiera. Ma solo quando il Win si preme il tasto.
Questo è il Magnifier di Windows 7 utilizza Win + - e Win + + per ingrandire e rimpicciolire , e voglio farlo tramite win-rotellina del mouse, il modo in cui dovrebbe hanno lavorato. Qualsiasi soluzione simile farà, ma preferisce utilizzare il built-in uno grazie al suo grande supporto multi-monitor.
Ho solo sapere VB.NET e C # in modo nello scenario probabile che la soluzione potrebbe essere in un'altra lingua si prega di fornire abbastanza che io non avrei bisogno di imparare la lingua.
Soluzione
Altri suggerimenti
Esempio soluzione sotto. Funziona correttamente con Win7 Magnifier, ha bisogno unfortuneatly Python 2.5.4, pywin32 , pyHook e SendKeys . Ma può essere riscritto in C / C ++ con solo un piccolo sforzo in più.
import pythoncom, pyHook, SendKeys
IS_WIN_DOWN = False
def OnMouseEvent(event):
if IS_WIN_DOWN:
if event.Wheel == 1:
SendKeys.SendKeys('{+}')
else:
SendKeys.SendKeys('-')
return True
def OnKeyboardEvent(event):
global IS_WIN_DOWNN
if event.KeyID is 91: #LWIN == 91
if event.Message == 256: #KEY_DOWN == 256
IS_WIN_DOWN= True
elif event.Message == 257: #KEY_UP == 257
IS_WIN_DOWN= False
return True
hm = pyHook.HookManager()
hm.SubscribeMouseWheel(OnMouseEvent)
hm.SubscribeKeyDown(OnKeyboardEvent)
hm.SubscribeKeyUp(OnKeyboardEvent)
hm.HookMouse()
hm.HookKeyboard()
pythoncom.PumpMessages()