开发者

how to detect if the windows key is pressed?

I would like to be able to detect when the window开发者_开发技巧s Key is pressed. I tried with getasynckeystate function bug didnt found the right virtual key. thanks for your help !


Check this out:

Keys Enumeration

You're looking for these key codes:

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

Sample code:

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


The key codes are given on the Keys Enumeration page:

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

It doesn't indicate whether either (if any) of these codes is obtained when using a keyboard other than the Microsoft Natural Keyboard.

If you are using WinForms then you need to trap the KeyDown Event

If you are using WPF then you need the Keyboard.KeyDown Event


If you really want to use GetAsyncKeyState, the values you're looking for are defined in WinUser.h as VK_LWIN and `VK_RWIN': 0x5B and 0x5C, respectively.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜