再表單的鍵盤事件中,最喜歡的是KeyDown事件

因為在Keydown可以呼叫 keyvalue 參數
用就兩個步驟



1.設定 MyBase.KeyPreview = True
2.設定接收Sub

Private Sub KeyPress_Down(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles MyBase.KeyDown


Select Case e.KeyValue

Case 96 '數字鍵0 下一個
btnNext.PerformClick()
btnNext.Focus()
Case 110 '數字鍵 . 上一個
btnPrieve.PerformClick()
btnPrieve.Focus()
Case 32 '空白鍵 下一片
btnNextShite.PerformClick()
Case 37 '方向鍵左
jogLeft.Focus()
jogLeft.PerformClick()
Case 38 '方向鍵上
jogUp.Focus()
jogUp.PerformClick()
Case 39 '方向鍵右
jogRight.Focus()
jogRight.PerformClick()
Case 40 '方向鍵下
jogDown.Focus()
jogDown.PerformClick()
Case 33 'Page Up
btnPrevPage.PerformClick()
Case 34 'Page Down
btnNextPage.PerformClick()
Case 97 '數字鍵1
radSpeed(0).Checked = True
Case 98 '數字鍵2
radSpeed(1).Checked = True
Case 99 '數字鍵3
radSpeed(2).Checked = True
Case 100 '數字鍵4
radSpeed(3).Checked = True
Case 101 '數字鍵5
radSpeed(4).Checked = True
Case 102 '數字鍵6
radSpeed(5).Checked = True
Case 103 '數字鍵7
btnVacuum.Focus()
btnVacuum.PerformClick()
Case 104 '數字鍵8
btnNonVacuum.Focus()
btnNonVacuum.PerformClick()
Case 107 '數字鍵+
btnViewAll.Focus()
btnViewAll.PerformClick()
Case 111 '數字鍵/
btnTabchange.PerformClick()
Case Else
Return
End Select

End Sub


只是在方向鍵不能直接呼叫 需再加上下面一段
Protected Overrides Function ProcessDialogKey(ByVal keyData As Keys) As Boolean
'讓方向鍵可以控制方向
If keyData = Keys.Left Or keyData = Keys.Right Or keyData = Keys.Up Or keyData = Keys.Down Then
Return False '如果是方向键返回FALSE,意思是继续执行form的keydown事件.
Else
Return MyBase.ProcessDialogKey(keyData)
End If
End Function

如此 就可以在表單使用最簡單的快捷鍵了

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 Rh 的頭像
    Rh

    程式狂想曲

    Rh 發表在 痞客邦 留言(0) 人氣()