我有一個MS Access中包含一個按鈕的表單。 我在按鈕的onClick事件上顯示一個消息框。但是,用戶也可以使用Tab鍵導航到該按鈕,然後按空格鍵,並期望發生與onClick事件相同的行爲。按鈕上的onClick事件和'空格鍵'按鍵事件
有沒有辦法有效地實現這一點?或者唯一的方法是從兩個地方調用相同的子例程 - 一個處理onClick事件,另一個處理「空格鍵」按鍵事件。
我有一個MS Access中包含一個按鈕的表單。 我在按鈕的onClick事件上顯示一個消息框。但是,用戶也可以使用Tab鍵導航到該按鈕,然後按空格鍵,並期望發生與onClick事件相同的行爲。按鈕上的onClick事件和'空格鍵'按鍵事件
有沒有辦法有效地實現這一點?或者唯一的方法是從兩個地方調用相同的子例程 - 一個處理onClick事件,另一個處理「空格鍵」按鍵事件。
您不應該將消息框的結果附加到另一個onClick上,而應該在現有的子表單中獲得結果並從那裏開始工作。例如:
Answer = MsgBox("Do you want to continue ?", vbYesNo)
If Answer = vbYes Then
Code for YES
Else
Code for NO
EndIf
瞭解更多關於您的消息框和代碼的作用會有所幫助。
有您的問題,許多解決方案:
Button_OnKey
事件,只允許OnClick
事件OnClick
OnClick
事件代碼,因爲用戶將能夠按下鍵盤上的按鈕,或者通過點擊鼠標,在這兩種情況下,都會觸發Button_Click
事件,因此將處理代碼放入Button_Click
事件
選中一個命令按鈕(使其具有焦點),然後按下Enter或空格具有與使用鼠標單擊命令按鈕相同的效果...按鈕的點擊事件觸發。您的Access應用程序的行爲有所不同,還是我誤解了您的問題? – HansUp
正如@HansUp所說,你描述的行爲應該沒有進一步的代碼就可以工作。如果在焦點位置上按下空格鍵時沒有觸發OnClick事件,則它不是正確的按鈕控件或其他任何錯誤。 –