いつもお世話になっております。
今回の質問なのですが、エンターキーについてです。
現在電卓を製作中です。
下の図のようにカーソルがエンターキーにある間は、エンターキーを押しても反応します。しかし、2つ目の画像のときはカーソルが移動しているため、エンターキーを押しても、カーソルのあるボタンが反応してしまいます。そのような、カーソルの位置が変わったときでも、エンターキーが反応できる方法を教えてもらいたいです。どうぞ、よろしくお願いいたします。
Private Sub Form1_KeyPress(sender As Object, e As KeyPressEventArgs) Handles Me.KeyPress
Select Case e.KeyChar
Case "+"
If txt1.Text = STRBTN2 Then
Exit Sub
ElseIf txt1.Text = STRBTN3 Then
Exit Sub
ElseIf txt1.Text = STRBTN4 Then
Exit Sub
ElseIf txt1.Text = STRBTN5 Then
Exit Sub
End If
btnaddition_Click(Me, EventArgs.Empty)
Case "-"
If txt1.Text = STRBTN2 Then
Exit Sub
ElseIf txt1.Text = STRBTN3 Then
Exit Sub
ElseIf txt1.Text = STRBTN4 Then
Exit Sub
ElseIf txt1.Text = STRBTN5 Then
Exit Sub
End If
btnsubtraction_Click(Me, EventArgs.Empty)
Case "*"
If txt1.Text = STRBTN2 Then
Exit Sub
ElseIf txt1.Text = STRBTN3 Then
Exit Sub
ElseIf txt1.Text = STRBTN4 Then
Exit Sub
ElseIf txt1.Text = STRBTN5 Then
Exit Sub
End If
btnmultiplication_Click(Me, EventArgs.Empty)
Case "/"
If txt1.Text = STRBTN2 Then
Exit Sub
ElseIf txt1.Text = STRBTN3 Then
Exit Sub
ElseIf txt1.Text = STRBTN4 Then
Exit Sub
ElseIf txt1.Text = STRBTN5 Then
Exit Sub
End If
btndivision_Click(Me, EventArgs.Empty)
Case "6"
btn6_Click(btn6, EventArgs.Empty)
Case "0"
btn0_Click(btn0, EventArgs.Empty)
Case "1"
btn1_Click(btn1, EventArgs.Empty)
Case "2"
btn2_Click(btn2, EventArgs.Empty)
Case "3"
btn3_Click(btn3, EventArgs.Empty)
Case "4"
btn4_Click(btn4, EventArgs.Empty)
Case "5"
btn5_Click(btn5, EventArgs.Empty)
Case "7"
btn7_Click(btn7, EventArgs.Empty)
Case "8"
btn8_Click(btn8, EventArgs.Empty)
Case "9"
btn9_Click(btn9, EventArgs.Empty)
Case "."
If txt1.Text = STRBTN2 Then
Exit Sub
ElseIf txt1.Text = STRBTN3 Then
Exit Sub
ElseIf txt1.Text = STRBTN4 Then
Exit Sub
ElseIf txt1.Text = STRBTN5 Then
Exit Sub
End If
btnkanma_Click(btnkanma, EventArgs.Empty)
End Select
End Sub
''' <summary>
''' バックスペース、エンター、dleteキーが押されたとき
MyBase.KeyDown
Select Case e.KeyCode
Case Keys.Back
btndeletion_Click(Me, EventArgs.Empty)
Case Keys.Enter
btnequal_Click(Me, EventArgs.Empty)
Case Keys.Delete
btnall_Click(Me, EventArgs.Empty)
End Select
End Sub
回答1件
あなたの回答
tips
プレビュー