2012-07-09 3 views
1

나는 글로벌 키보드 걸이를 만들기 위해 it을 사용하고 있습니다. 다음과 같은 행이 있습니다.키 조합을위한 글로벌 키보드 후크를 만드는 방법은 무엇입니까?

gkh.HookedKeys.Add(Keys.A); 
gkh.HookedKeys.Add(Keys.B); 

후크 핫키를 등록하십시오. 조합을 위해 그 솔루션을 수정하는 방법 (예 : A + B, 단 하나 A 또는 B가 아닌)?

+0

단축키에 글로벌 키보드 후크를 사용하지 마십시오. 가능한 경우 RegisterHotkey를 사용하십시오. 그것은 다 중적으로 멀티 키 조합을 지원하지만 하나의 키를 제외한 모든 키가 수정 키 (Ctrl, Alt, Windows, Shift) 인 경우에만이 규칙을 사용하지 않는 멀티 키 단축키를 사용하는 정상적인 응용 프로그램을 보지 못했습니다. – CodesInChaos

+0

전 세계적인 후크가 필요합니다. 응용 프로그램은 트레이에서 단축키를 잡아야합니다. – lenden

+1

'RegisterHotkey'는 전역 단축키를 만듭니다. 정말 이상한 요구 사항이 없으면 키보드 후크보다 훨씬 적합합니다. – CodesInChaos

답변

1

글로벌 단축키의 표준 해결책은 RegisterHotkey API입니다. 그것은 단축키 (Control, Shift, Alt, Windows)를 즉시 사용할 수있는 단축키를 지원하며 후크의 글로벌 부작용을 겪지 않습니다.

+0

HotKeyManager.RegisterHotKey (Keys.A, KeyModifiers.Alt); - ctrl + alt + a로 변경하려면 어떻게해야합니까? – lenden

+2

나는 당신이'KeyModifiers.Alt | KeyModifiers.Control' – CodesInChaos