程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Access數據庫 >> 關於Access數據庫 >> 如何自定義三個鍵的組合鍵

如何自定義三個鍵的組合鍵

編輯:關於Access數據庫

利用KeyDown事件,我們很輕易地就可以編出讓程序響應兩個按鍵的組合鍵的事件,如:

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
if Shift=1 and KeyCode=VbKeyM then
msgbox "您按下了Shift+M鍵"
end if
end sub

如果要讓程序響應三個鍵的組合鍵就要麻煩一點,比如現在要用shift+b+m打開"部門"窗體。
首先要聲明兩個窗體級變量mSta/bSta保存M及B鍵的按鍵狀態,然後在窗體的Load事件裡設置KeyPrevIEw(鍵預覽)為True,以便窗體先於控件接收鍵盤事件。
在KeyDown事件裡判斷按鍵,如果按下M或B,就把mSta或bSta置為True。
在KeyUp事件裡判斷按鍵,如果放開M或B,就把mSta或bSta置為false。
做完這些事後就可以在KeyDown事件裡判斷是否按下了Shift+M+B鍵了,代瑪如下:
Dim mSta As Boolean
Dim bSta As Boolean

Private Sub Form_Load()
Me.KeyPrevIEw = True
End Sub

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyM Then
mSta = True
End If
If KeyCode = vbKeyb Then
bSta = True
End If
If Shift = 1 And mSta = True And bSta = True Then
DoCmd.OpenForm "部門"
mSta = False
bSta = False
End If
End Sub

Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyM Then
mSta = False
End If
If KeyCode = vbKeyB Then
bSta = False
End If
End Sub

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved