2013-10-09 82 views
0

我有我在我的vb.net程序,但它dosnt工作snipet以下代碼?它絕對沒有迴應,也許有人知道這是爲什麼?Keydown事件vb.net無法響應?

Private Sub Form1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles MyBase.KeyDown 
    If (e.KeyCode = Keys.Q AndAlso e.Modifiers = Keys.Control) Then 
     MsgBox("CTRL + Q Pressed !") 
    End If 
End Sub 

我用VB.net

+0

您是否將表單的KeyPreview屬性設置爲true? – Fred

+0

你嘗試在按鍵事件 – SK2185

+0

@弗雷德謝謝你做的伎倆:) –

回答

0

設置窗體的KeyPreview屬性爲true。即使控件具有焦點,表單也會了解關鍵事件。

+1

KeyPreview是一個VB6 compat屬性,應該避免。它在這種情況下工作,但它往往令人失望,因爲VB6的行爲是古怪的,只有某些擊鍵傳遞給KeyDown。通用的解決方案是重寫表單的ProcessCmdKey()方法。 –