不知道你想说什么,写一个你看看吧!
Option Explicit
Private number1 As Double
Private number2 As Double
Private result As Double
Dim dian As Boolean
Dim flag As Boolean
Private flag1 As Boolean
Dim aaa As Boolean
Dim bbb As Boolean
Private yunsuan As String
Private Sub bai_Click()
If flag1 = False Then
If yunsuan = "+" Then
number2 = Val(Text1.Text) * 0.01 * number1
Text1.Text = Str(number2)
ElseIf yunsuan = "*" Then
number2 = Val(Text1.Text) * 0.01
Text1.Text = Str(number2)
End If
End If
flag1 = True
aaa = False
End Sub
Private Sub c_Click()
Text1.Text = "0."
dian = False
number1 = 0
number2 = 0
flag = False
flag1 = False
End Sub
Private Sub ce_Click()
If aaa = True Then
If flag = False Then
number1 = 0
Text1.Text = "0."
ElseIf flag = True Then
number2 = 0
Text1.Text = "0."
End If
End If
End Sub
Private Sub Command1_Click(Index As Integer)
If bbb = False Then
If Text1.Text = "0." And dian = False Then
Text1.Text = ""
End If
Dim Num As Integer
Select Case Index
Case 0
Num = 0
dian = True
Case 1
Num = 1
Case 2
Num = 2
Case 3
Num = 3
Case 4
Num = 4
Case 5
Num = 5
Case 6
Num = 6
Case 7
Num = 7
Case 8
Num = 8
Case 9
Num = 9
End Select
If Len(Text1.Text) < 10 Then
Text1.Text = Text1.Text & Num
End If
End If
aaa = True
End Sub
Private Sub Command2_Click()
If InStr(Text1.Text, ".") Then
Text1.Text = Text1.Text
Else
Text1.Text = Text1.Text + "."
End If
End Sub
Private Sub dengyu_Click()
If flag1 = False Then
number2 = Val(Text1.Text)
If yunsuan = "+" Then
result = number1 + number2
Text1.Text = Str(result)
number1 = Val(Text1.Text)
ElseIf yunsuan = "-" Then
result = number1 - number2
Text1.Text = Str(result)
number1 = Val(Text1.Text)
ElseIf yunsuan = "*" Then
result = number1 * number2
Text1.Text = Str(result)
number1 = Val(Text1.Text)
ElseIf yunsuan = "/" Then
If number2 = 0 Then
MsgBox "·Öĸ²»ÄÜΪÁã"
Text1.Text = ""
Else
result = number1 / number2
Text1.Text = Str(result)
number1 = Val(Text1.Text)
End If
End If
ElseIf flag1 = True Then
bai_Click
If yunsuan = "+" Then
result = number1 + number2
Text1.Text = Str(result)
number1 = Val(Text1.Text)
ElseIf yunsuan = "*" Then
result = number1 * number2
Text1.Text = Str(result)
number1 = Val(Text1.Text)
End If
End If
aaa = False
bbb = True
End Sub
Private Sub Form_Load()
Text1.Text = "0."
number1 = 0
number2 = 0
End Sub
Private Sub yun_Click(Index As Integer)
number1 = Val(Text1.Text)
Select Case Index
Case 0
yunsuan = "+"
Text1.Text = ""
flag = True
Case 1
yunsuan = "-"
Text1.Text = ""
flag = True
Case 2
yunsuan = "*"
Text1.Text = ""
flag = True
Case 3
yunsuan = "/"
Text1.Text = ""
flag = True
End Select
bbb = False
End Sub
也许大家都明白我的意思。
Mi_Bo(东方云霄) 你理解错了,我的意思是当清空text 后,string2=""
所以没有办法输入234了,这个是我很困惑的地方。
string=text1.text
text1.text=""
string2=""
当我实质要求是 当清空text后就可以再次输入234
并且让string2=234 就这个意思。。。哎,我怎么叙述能明白呢。
这个是text
|--------------|
|______________| 我在里面输入了123
然后|--------------|
|___123________| 并且 我让string1=text.tex1
这时,我学要text清空,
|--------------|
|______________|
然后我再次输入234
为的是string2能够得到我第二次副值 string2=text1.text
可是第二次副值string2 得到的是 空的。。
我的意思是在TEXT1中怎么输入两次数,
Dim s As Integer
Dim get_Value As String
Dim obtain As String
Dim max As Integer
Private Sub cmd_Calculation_Click(Index As Integer)
End Sub
Private Sub cmd_Num_Click(Index As Integer)
End Sub
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
Select Case KeyCode
Case 96
cmd_Num(0).SetFocus
get_Value = "0"
Case 97
cmd_Num(1).SetFocus
get_Value = "1"
Case 98
cmd_Num(2).SetFocus
get_Value = "2"
Case 99
cmd_Num(3).SetFocus
get_Value = "3"
Case 100
cmd_Num(4).SetFocus
get_Value = "4"
Case 101
cmd_Num(5).SetFocus
get_Value = "5"
Case 102
cmd_Num(6).SetFocus
get_Value = "6"
Case 103
cmd_Num(7).SetFocus
get_Value = "7"
Case 104
cmd_Num(8).SetFocus
get_Value = "8"
Case 105
cmd_Num(9).SetFocus
get_Value = "9"
Case 48
cmd_Num(0).SetFocus
get_Value = "0"
Case 49
cmd_Num(1).SetFocus
get_Value = "1"
Case 50
cmd_Num(2).SetFocus
get_Value = "2"
Case 51
cmd_Num(3).SetFocus
get_Value = "3"
Case 52
cmd_Num(4).SetFocus
get_Value = "4"
Case 53
cmd_Num(5).SetFocus
get_Value = "5"
Case 54
cmd_Num(6).SetFocus
get_Value = "6"
Case 55
cmd_Num(7).SetFocus
get_Value = "7"
Case 56
cmd_Num(8).SetFocus
get_Value = "8"
Case 57
cmd_Num(9).SetFocus
get_Value = "9"
Case 107
cmd_Calculation(0).SetFocus
get_Value = "+"
Case 109
cmd_Calculation(1).SetFocus
get_Value = "-"