level 2
hua081225
楼主
Dim flag As Integer
Dim isClickNumLast As Boolean
Dim s1 As String '前一步的值
Dim s2 As String '当前框中的值
Private Sub Form_Load()
isClickNumLast = True
flag = 1
End Sub
'点数字的操作
Private Sub cmdNum_Click(Index As Integer)
Text1.Text = IIf(isClickNumLast, Text1.Text, "")
& CStr(Index)
isClickNumLast = True
End Sub
'点运算符的操作
Private Sub cmdOper_Click(Index As Integer)
If isClickNumLast Then
Call computeResult
Text1.Text = s1
End If
flag = Index
isClickNumLast = False
End Sub
'得出结果
Private Sub cmdOK_Click()
Call computeResult
Text1.Text = s1
isClickNumLast = False
End Sub
'清屏
Private Sub cmdClear_Click() '清屏
Text1.Text = ""
isClickNumLast = True
flag = 1
End Sub
'计算结果
Private Sub computeResult()
s2 = Text1.Text
Select Case flag 'flag为运算符,分别为+-*/
Case 1
s1 = CStr(Val(s1) + Val(s2))
Case 2
s1 = CStr(Val(s1) - Val(s2))
Case 3
s1 = CStr(Val(s1) * Val(s2))
Case 4
s1 = CStr(Val(s1) / Val(s2))
End Select
End Sub
用的是控件数组,是用来写一个计算器程序的,但不知道出了什么问题
2012年02月29日 14点02分
1
Dim isClickNumLast As Boolean
Dim s1 As String '前一步的值
Dim s2 As String '当前框中的值
Private Sub Form_Load()
isClickNumLast = True
flag = 1
End Sub
'点数字的操作
Private Sub cmdNum_Click(Index As Integer)
Text1.Text = IIf(isClickNumLast, Text1.Text, "")
& CStr(Index)
isClickNumLast = True
End Sub
'点运算符的操作
Private Sub cmdOper_Click(Index As Integer)
If isClickNumLast Then
Call computeResult
Text1.Text = s1
End If
flag = Index
isClickNumLast = False
End Sub
'得出结果
Private Sub cmdOK_Click()
Call computeResult
Text1.Text = s1
isClickNumLast = False
End Sub
'清屏
Private Sub cmdClear_Click() '清屏
Text1.Text = ""
isClickNumLast = True
flag = 1
End Sub
'计算结果
Private Sub computeResult()
s2 = Text1.Text
Select Case flag 'flag为运算符,分别为+-*/
Case 1
s1 = CStr(Val(s1) + Val(s2))
Case 2
s1 = CStr(Val(s1) - Val(s2))
Case 3
s1 = CStr(Val(s1) * Val(s2))
Case 4
s1 = CStr(Val(s1) / Val(s2))
End Select
End Sub
用的是控件数组,是用来写一个计算器程序的,但不知道出了什么问题