vb简易计算器源码
/**
*Author:乌鸟heart
*Version:1.0
*/
Dim IntX As Double '全局变量,用于存储计算的数值
Dim IntOperation As Double '标记运算类型
Dim isBegin As Boolean '标记是否已经给IntX赋值
Public Sub Clear() '清空命令函数
screen.Caption = ""
End Sub
Public Sub SavaToIntX()
Select Case IntOperation
Case 1 '加法
If isBegin = False Then
IntX = Val(screen.Caption)
isBegin = True
Else
IntX = IntX + Val(screen.Caption)
End If
Case 2 '减法
If isBegin = False Then
IntX = Val(screen.Caption)
isBegin = True
Else
IntX = IntX - Val(screen.Caption)
End If
Case 3 '乘法
If isBegin = False Then
IntX = Val(screen.Caption)
isBegin = True
Else
IntX = IntX * Val(screen.Caption)
'screen.Caption = IntX
End If
Case 4 '除法
If isBegin = False Then
IntX = Val(screen.Caption)
isBegin = True
Else
IntX = IntX / Val(screen.Caption)
End If
End Select
End Sub
Private Sub Command0_Click()
screen.Caption = screen.Caption & 0
End Sub
Private Sub Command1_Click()
screen.Caption = screen.Caption & 1
End Sub
Private Sub Command2_Click()
screen.Caption = screen.Caption & 2
End Sub
Private Sub Command3_Click()
screen.Caption = screen.Caption & 3
End Sub
Private Sub Command4_Click()
screen.Caption = screen.Caption & 4
End Sub
Private Sub Command5_Click()
screen.Caption = screen.Caption & 5
End Sub
Private Sub Command6_Click()
screen.Caption = screen.Caption & 6
End Sub
Private Sub Command7_Click()
screen.Caption = screen.Caption & 7
End Sub
Private Sub Command8_Click()
screen.Caption = screen.Caption & 8
End Sub
Private Sub Command9_Click()
screen.Caption = screen.Caption & 9
End Sub
Private Sub CommandClear_Click() '清空命令
isBegin = False
IntOperation = 0
IntX = 0
screen.Caption = ""
End Sub
Private Sub CommandEqual_Click() '等号运算
If IntOperation <> 0 Then '有运算标记的情况
Call SavaToIntX
IntOperation = 0
isBegin = False
screen.Caption = IntX
End If
End Sub
Private Sub CommandMinus_Click() '减法运算
If IntOperation <> 0 Then '有运算标记的情况
Call SavaToIntX
IntOperation = 2
Call Clear
Else
IntOperation = 2
Call SavaToIntX
Call Clear
End If
End Sub
Private Sub CommandMultiple_Click() '乘法运算
If IntOperation <> 0 Then '有运算标记的情况
Call SavaToIntX
IntOperation = 3
Call Clear
Else
IntOperation = 3
Call SavaToIntX
Call Clear
End If
End Sub
Private Sub CommandPlus_Click() '加法运算
If IntOperation <> 0 Then '有运算标记的情况
Call SavaToIntX
IntOperation = 1
Call Clear
Else
IntOperation = 1
Call SavaToIntX
Call Clear
End If
End Sub
Private Sub CommandSlash_Click() '除法运算
If IntOperation <> 0 Then '有运算标记的情况
Call SavaToIntX
IntOperation = 4
Call Clear
Else
IntOperation = 4
Call SavaToIntX
Call Clear
End If
End Sub