请帮我看下我做计算器代码的问题!

来源:百度知道 编辑:UC知道 时间:2024/09/25 09:39:03
Private Sub Command1_Click()
Label1.Caption ="+"
text3.text=val(text1.text) + val (text2.text)
END sub

Private Sub Command2_Click()
Label1.Caption ="-"
text3.text=val(text1.text) - val (text2.text)
END sub

Private Sub Command3_Click()
Label1.Caption ="×"
text3.text=val(text1.text) * val (text2.text)
END sub

Private Sub Command4_Click()
IF text2.text=0 then
MSGBOX "不好意思,除数不能为0"
exit sub
END IF
Label1.Caption ="÷"
text3.text=val(text1.text) / val (text2.text)
END sub

我想做到是先按第一个因数出来再选择+ - * / 然后再输入第二个因数的
例如:1+1=2
可是我现在用的代码效果是
1+=1 了```还没有输入第二因数就得到结果了!
不行哦!!

因为我加了个Command5 做为等于键! 你给的代码还没有等于键呢!!

当按减的时候``运算也出错了!

你看一下以下代码,看看是不是你想要的答案:

Private Sub Command1_Click()
On Error GoTo abc
Select Case operator
Case "加"
Text3.Text = CCur(Text1.Text) + CCur(Text2.Text)
Case "减"
Text3.Text = CCur(Text1.Text) - CCur(Text2.Text)
Case "乘"
Text3.Text = CCur(Text1.Text) * CCur(Text2.Text)
Case "除"
If CCur(Text2.Text) = 0 Then
MsgBox "除数不能为0", 48, "计算器"
Else
Text3.Text = CCur(Text1.Text) / CCur(Text2.Text)
End If
End Select
Exit Sub
abc: '错误陷阱语句标号,捕捉到错误后转移到此处执行代码
MsgBox "运算数必须是十进制数,且除数不能为0", 48, "计算器"
Resume Next
End Sub

Private Sub Command2_Click()
Text1.Text = ""
Text1.Refresh
Text2.Text = ""
Text2.Refresh
Text3.Text = ""
Text3.Refresh
Text1.SetFocus '将输入焦点控制设置到文本框text1上
End Sub