我想做一個基本的計算器,我有我的按鈕數字0-9和所有的數學符號。我想將我的鍵盤(數字鍵盤)按鈕連接到他們,我做了一些搜索,並看到一些例子'if'語句。 是否可以使用select case來做到這一點? 哪個鍵盤事件最適合處理鍵盤輸入? KeyUp,KeyDown或KeyPress? KeyPress給我錯誤,'='不是一個有效的操作符。鍵盤輸入與選擇案例
0
A
回答
1
這當然可以用Select Case
。
對此,最好的關鍵事件大概是KeyDown
,所以只要用戶按下按鍵,按鈕就會被點擊。 (如果你會使用KeyUp
,那麼它會等待他們釋放的關鍵,這可能不是他們所期望的。)
這如何可能看起來一個例子:
Private Sub Form1_KeyDown(sender As System.Object, e As System.Windows.Forms.KeyEventArgs) Handles MyBase.KeyDown
Select Case e.KeyCode
Case Keys.NumPad1
Button1.PerformClick()
Case Keys.NumPad2
Button2.PerformClick()
Case Keys.NumPad3
Button3.PerformClick()
'Continue adding other keys here'
End Select
End Sub
你需要改變與您的代碼匹配的按鈕名稱。
您可能還需要將表單的KeyPreview
屬性設置爲True
,以便提升KeyDown
事件。 (你可以在設計器中這樣做)
0
確保在表單的屬性中設置了KeyPreview。
Private Sub Form1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
Select Case e.KeyCode
Case Keys.NumPad0
btn0.PerformClick()
Case Keys.NumPad1
btn1.PerformClick()
Case Keys.NumPad2
btn2.PerformClick()
Case Keys.NumPad3
btn3.PerformClick()
Case Keys.NumPad4
btn4.PerformClick()
Case Keys.NumPad5
btn5.PerformClick()
Case Keys.NumPad6
btn6.PerformClick()
Case Keys.NumPad7
btn7.PerformClick()
Case Keys.NumPad8
btn8.PerformClick()
Case Keys.NumPad9
btn9.PerformClick()
End Select
End Sub
相關問題
- 1. IOS鍵盤輸入選擇器
- 2. 鍵盤輸入與可編程鍵盤
- 3. 問題與「選擇案例」
- 4. 軟輸入鍵盤與Android
- 5. 鍵盤輸入與actionscript
- 6. 素數與鍵盤輸入
- 7. 基於鍵盤輸入選擇單選按鈕選項
- 8. 鍵盤輸入
- 9. 突出顯示從鍵盤輸入選擇標籤選項
- 10. 如何限制提前輸入選項從鍵盤中選擇?
- 11. 軟鍵盤輸入
- 12. XNA鍵盤輸入
- 13. Tcl鍵盤輸入
- 14. 鍵盤輸入PHP
- 15. Libgdx鍵盤「輸入」
- 16. 鍵盤輸入java
- 17. Ncurses鍵盤輸入
- 18. Qt鍵盤輸入
- 19. XNA - 鍵盤輸入
- 20. 選擇文本,並與鍵盤映射
- 21. 鍵盤輸入返回鍵
- 22. 案例在mysql中的選擇案例
- 23. 自定義Android鍵盤輸入篩選
- 24. 當選擇文本輸入時強制鍵盤顯示
- 25. C虛擬鍵盤輸入選擇性工作
- 26. 選擇特定的USB鍵盤輸入設備?
- 27. 防止在選擇輸入框時觸發鍵盤事件
- 28. 如何打開鍵盤事件上的選擇輸入模式
- 29. 選擇並使用鍵盤箭頭選擇div元素並輸入密鑰?
- 30. SQL案例聲明與子選擇
我可以立即調用'Button1_Click'事件嗎?還是使用Button1.PerformClick()更好? – Vahx
'PerformClick()'更好! – OneFineDay
您應該使用'PerformClick()',因爲'Button1_Click'的參數'sender'和'e'與'Form1_KeyDown'不同。 – camerondm9