3

Windowsキーが押されたことを検出できるようにしたいと思います。getasynckeystate 関数のバグを試してみましたが、正しい仮想キーが見つかりませんでした。ご協力いただきありがとうございます !

4

3 に答える 3

3

これをチェックしてください:

キーの列挙

あなたはこれらのキーコードを探しています:

LWin    The left Windows logo key (Microsoft Natural Keyboard).
RWin    The right Windows logo key (Microsoft Natural Keyboard).

サンプルコード:

Public Sub TextBox1_KeyPress(ByVal sender As Object, _
    ByVal e As KeyPressEventArgs) Handles TextBox1.KeyPress

    If (e.Key = Key.LWin Or e.Key = Key.RWin) Then
        MsgBox("Pressed Windows Key")
    End If
End Sub
于 2011-02-05T22:06:49.113 に答える
1

キーコードは、[キーの列挙]ページに記載されています。

LWin左側のWindowsロゴキー(Microsoft Naturalキーボード)。
RWin正しいWindowsロゴキー(Microsoftナチュラルキーボード)。

Microsoft Naturalキーボード以外のキーボードを使用したときに、これらのコードのいずれか(存在する場合)が取得されたかどうかは示されません。

WinFormsを使用している場合は、KeyDownイベントをトラップする必要があります

WPFを使用している場合は、Keyboard.KeyDownイベントが必要です

于 2011-02-05T22:04:43.360 に答える
1

本当に を使用したい場合GetAsyncKeyState、探している値は WinUser.h でVK_LWINおよび `VK_RWIN': 0x5B および 0x5C としてそれぞれ定義されています。

于 2011-02-05T23:11:34.620 に答える