Access) (Form.KeyPreview 屬性

使用 KeyPreview 屬性指定是否在控制項的鍵盤事件程序之前叫用表單層級鍵盤事件程序。 可讀寫的 Boolean。

語法

運算式。KeyPreview

expression 代表 Form 物件的變數。

註解

KeyPreview 屬性使用下列設定值。

設定 Visual Basic 描述
是 True 表單會先接收鍵盤事件,然後使用中的控制項會收到鍵盤事件。
否 False (預設值) 只有使用中的控制項收到鍵盤事件。

您可以在任何檢視中設定 KeyPreview 屬性。

使用 KeyPreview 屬性建立表單的鍵盤處理程序。 例如,當應用程式使用功能鍵時,將 KeyPreview 屬性設定為 True 可讓您在表單層次處理按鍵事件,而不是為每個可能收到按鍵事件的控制項撰寫程式碼。

若只要在表單層次處理鍵盤事件及避免控制項接收到鍵盤事件,請在表單的 KeyPress 事件程序中將 KeyAscii 引數設定為 0,並在表單的 KeyDown 及 KeyUp 事件程序中將 KeyCode 引數設定為 0。

假如表單內沒有任何看得見或是已啟用的控制項,它將自動地接收所有的鍵盤事件。

範例

在下列範例中,KeyPreview 屬性在表單的 Load 事件程序中被設定為 True。 這樣可以讓表單在任何控制項接收到鍵盤事件之前先接收到鍵盤事件。 然後表單的 KeyDown 事件會檢查 KeyCode 引數值來決定是否已按下 F2、F3 或 F4 鍵。

Private Sub Form_Load() 
 Me.KeyPreview = True 
End Sub 
 
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) 
 Select Case KeyCode 
 Case vbKeyF2 
 ' Process F2 key events. 
 Case vbKeyF3 
 ' Process F3 key events. 
 Case vbKeyF4 
 ' Process F4 key events. 
 Case Else 
 End Select 
End Sub

支援和意見反應

有關於 Office VBA 或這份文件的問題或意見反應嗎? 如需取得支援服務並提供意見反應的相關指導,請參閱 Office VBA 支援與意見反應。