2012-07-15 16 views

回答

1

在這個圖書館看看:在使用本LIB具有以下

http://globalmousekeyhook.codeplex.com/

舉個例子片斷,可以禁用WINKEY + R組合。 有兩個步驟1.檢測組合2.通過設置e.Handled = true禁用進一步處理。 希望它有幫助。

private KeyboardHookListener m_KeyboardHookManager; 
private bool m_LeftWinKeyIsDown; 
private bool m_RightWinKeyIsDown; 

private void TestForm_Load(object sender, EventArgs e) 
{ 
    m_KeyboardHookManager = new KeyboardHookListener(new GlobalHooker()); 
    m_KeyboardHookManager.KeyDown += HookManager_KeyDown; 
    m_KeyboardHookManager.KeyUp += HookManager_KeyUp; 
    m_KeyboardHookManager.Enabled = true; 
} 

private void HookManager_KeyDown(object sender, KeyEventArgs e) 
{ 
    if (e.KeyCode ==Keys.LWin) m_LeftWinKeyIsDown = true; 
    if (e.KeyCode ==Keys.RWin) m_RightWinKeyIsDown = true; 
    if ((m_LeftWinKeyIsDown || m_RightWinKeyIsDown) && e.KeyCode == Keys.R) e.Handled = true; 
} 

private void HookManager_KeyUp(object sender, KeyEventArgs e) 
{ 
    if (e.KeyCode == Keys.LWin) m_LeftWinKeyIsDown = false; 
    if (e.KeyCode == Keys.RWin) m_RightWinKeyIsDown = false; 
}