查看: 49|回覆: 0

[教程] vb简易计算器源码

[複製鏈接]

3

主題

0

回帖

0

積分

热心网友

金币
0
閲讀權限
220
精華
0
威望
0
贡献
0
在線時間
0 小時
註冊時間
2010-9-23
發表於 2012-9-29 22:34:56 | 顯示全部樓層 |閲讀模式
代码如下:
复制代码 代码如下:

/**
*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
回覆

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 立即注册

本版積分規則

相关侵权、举报、投诉及建议等,请发 E-mail:qiongdian@foxmail.com

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部