2014-03-24 43 views
3

的代碼,其在Ctrl鍵 + 移位不反應 + ħ被按壓被檢測到:按Ctrl + Shift + H不能使用Me.KeyDown

Private Sub HideMode(ByVal sendeer As System.Object, ByVal e As KeyEventArgs) Handles Me.KeyDown 
    Select Case CInt(e.KeyCode) 
     Case Keys.ControlKey 
      If e.Shift AndAlso e.KeyValue = Convert.ToInt32(Convert.ToChar(Keys.H)) Then 
       MsgBox("Test hide function") 
      End If 
    End Select 
End Sub 

該預期的結果是,按下Ctrl鍵++ H^一個msgbox顯示文本 「測試隱藏功能」

後10

這裏有什麼錯誤?

回答

5

我不underdstand爲什麼你嘗試的鍵碼轉換爲整數時,同樣的工作可以用鑰匙枚舉

Select Case e.KeyCode 
    Case Keys.H 
     If (e.Control AndAlso e.Shift) Then 
      MsgBox("Test hide function") 
     End If 
End Select 

編輯那麼很容易做到,WebBrowser控件是一個不同的野獸。您需要爲它添加一個特定的KeyDown處理程序(除了另一個處理FocusDown時,處理其他控件的KeyDown)

Private Sub Browser_PreviewKeyDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.PreviewKeyDownEventArgs) Handles WebBrowser1.PreviewKeyDown 
    Select Case e.KeyCode 
     Case Keys.H 
      If e.Shift AndAlso e.Control Then 
       MsgBox("Test hide function") 
      End If 
    End Select 
End Sub 
+0

不,它不起作用。還有什麼問題嗎? – Jamie

+0

您是否設置了Form KeyPreview = True?看起來你想要處理表單的KeyDown,而不是TextBox。這需要將該屬性設置爲true – Steve

+0

我在哪裏設置了它? – Jamie

相關問題