2009-03-05 28 views
1

我想使^ N的工作方式與樹中的向下箭頭相同。我想 我只需要添加以下到的KeyDown處理程序:SendKeys.Send並關閉鍵修改器

SendKeys.Send("{Down}"); 

但會將這種行爲視爲因爲控制鍵 目前按下控制向下箭頭。 msdn page 描述瞭如何打開 控制修改器,但不知道如何關閉它。

感謝, 基思

回答

4

對不起來遲到了,但我想我找到了解決辦法:

首先,進口SetKeyboardState:

[DllImport("user32.dll")] 
public static extern bool SetKeyboardState(byte[] lpKeyState); 

然後,就用調零字節數組調用它調用SendKeys.Send前():

SetKeyboardState(new byte[256]); 
SendKeys.Send("your key sequence"); 

這對我有效。希望這可以幫助!

+0

+1也適用於我;) – JustLoren 2009-10-07 19:40:37

0

這裏是做它的艱辛的道路。我承認這不是實現它的最佳方式。我相信你已經知道這一點。您可能想要使用SendMsg Win32 Api過載Windoproc控件的方法&。這就是我在當天使用的東西。

1

您可以調用keybd_event。這可以讓你模擬一個處於「上」和「下」狀態的密鑰。