會傳回與 KeyDown 和 KeyUp 事件相關的代碼。 唯讀。
語法
expression。 KeyCode
運算式 代表 KeyboardEvent 物件的變數。
傳回值
Long
註解
KeyCode 的可能值會在 Microsoft Visual Basic for Applications (VBA) 程式庫中的 KeyCodeConstants 進行宣告。
範例
本類別模組會顯示如何定義名稱為 KeyboardListener 的接收器類別,用它來聆聽使用中視窗裡的鍵盤動作所引發的事件。 此類別會聆聽由使用中視窗中的滑鼠動作所引發的事件,並使用 WithEvents 關鍵字宣告 vsoWindow 物件變數。 本類別模組還含有 KeyDown、KeyPress 及 KeyUp 事件的事件處理常式。
若要執行此範例,請在 VBA 專案中插入新的類別模組,將其命名為 KeyboardListener,然後在模組中插入下列程式碼。
Dim WithEvents vsoWindow As Visio.Window
Private Sub Class_Initialize()
Set vsoWindow = ActiveWindow
End Sub
Private Sub Class_Terminate()
Set vsoWindow = Nothing
End Sub
Private Sub vsoWindow_KeyDown(ByVal KeyCode As Long, ByVal KeyButtonState As Long, CancelDefault As Boolean)
Debug.Print "KeyCode is "; KeyCode
Debug.Print "KeyButtonState is" ; KeyButtonState
End Sub
Private Sub vsoWindow_KeyPress(ByVal KeyAscii As Long, CancelDefault As Boolean)
Debug.Print "KeyAscii value is "; KeyAscii
End Sub
Private Sub vsoWindow_KeyUp(ByVal KeyCode As Long, ByVal KeyButtonState As Long, CancelDefault As Boolean)
Debug.Print "KeyCode is "; KeyCode
Debug.Print "KeyButtonState is" ; KeyButtonState
End Sub
然後,在 ThisDocument 專案中插入下列程式碼。
Dim myKeyboardListener As KeyboardListener
Private Sub Document_DocumentSaved(ByVal doc As IVDocument)
Set myKeyboardListener = New KeyboardListener
End Sub
Private Sub Document_BeforeDocumentClose(ByVal doc As IVDocument)
Set myKeyboardListener = Nothing
End Sub
儲存文件以初始化類別,然後按任意鍵觸發 KeyDown 事件。 在 [即時運算] 視窗中,處理常式會列印為了觸發事件所按按鍵的代碼以及觸發事件時 SHIFT 和 CTRL 鍵的狀態。
支援和意見反應
有關於 Office VBA 或這份文件的問題或意見反應嗎? 如需取得支援服務並提供意見反應的相關指導,請參閱 Office VBA 支援與意見反應。