急求;VB程序设计,简单计算器,在线等

设计一个简单地计算器,可以进行加减乘除的运算 谢谢,如果正确了还可以追加分哦!

将以下文本复制到记事本中,储存为frmMain.frm再用VB打开

VERSION 5.00

Begin VB.Form frmMain 

   Appearance      =   0  'Flat

   BackColor       =   &H80000005&

   BorderStyle     =   3  'Fixed Dialog

   Caption         =   "简单计算器"

   ClientHeight    =   2430

   ClientLeft      =   45

   ClientTop       =   435

   ClientWidth     =   3150

   KeyPreview      =   -1  'True

   LinkTopic       =   "Form1"

   MaxButton       =   0   'False

   MinButton       =   0   'False

   ScaleHeight     =   2430

   ScaleWidth      =   3150

   ShowInTaskbar   =   0   'False

   StartUpPosition =   3  '窗口缺省

   Begin VB.CommandButton Command10 

      Caption         =   "^"

      Height          =   375

      Left            =   1920

      TabIndex        =   22

      Top             =   1920

      Width           =   495

   End

   Begin VB.PictureBox picDisplay 

      Appearance      =   0  'Flat

      BackColor       =   &H80000005&

      ForeColor       =   &H80000008&

      Height          =   255

      Left            =   120

      ScaleHeight     =   225

      ScaleWidth      =   2865

      TabIndex        =   19

      Top             =   120

      Width           =   2895

      Begin VB.TextBox Text1 

         Alignment       =   1  'Right Justify

         BorderStyle     =   0  'None

         Height          =   255

         Left            =   240

         Locked          =   -1  'True

         TabIndex        =   20

         Top             =   0

         Width           =   2535

      End

      Begin VB.Label lblOperation 

         Appearance      =   0  'Flat

         BackColor       =   &H80000005&

         ForeColor       =   &H80000008&

         Height          =   255

         Left            =   60

         TabIndex        =   21

         Top             =   0

         Width           =   255

      End

   End

   Begin VB.CommandButton Command9 

      Caption         =   "退格"

      Height          =   375

      Left            =   1920

      TabIndex        =   18

      Top             =   480

      Width           =   495

   End

   Begin VB.CommandButton Command8 

      Caption         =   "清零"

      Height          =   375

      Left            =   2520

      TabIndex        =   17

      Top             =   480

      Width           =   495

   End

   Begin VB.CommandButton cmdDot 

      Caption         =   "."

      Height          =   375

      Left            =   120

      TabIndex        =   16

      Top             =   1920

      Width           =   495

   End

   Begin VB.CommandButton Command7 

      Caption         =   "Sqrt"

      Height          =   375

      Left            =   2520

      TabIndex        =   15

      Top             =   1920

      Width           =   495

   End

   Begin VB.CommandButton Command6 

      Caption         =   "="

      Height          =   375

      Left            =   1320

      TabIndex        =   14

      Top             =   1920

      Width           =   495

   End

   Begin VB.CommandButton Command5 

      Caption         =   "/"

      Height          =   375

      Left            =   2520

      TabIndex        =   13

      Top             =   1440

      Width           =   495

   End

   Begin VB.CommandButton Command4 

      Caption         =   "*"

      Height          =   375

      Left            =   1920

      TabIndex        =   12

      Top             =   1440

      Width           =   495

   End

   Begin VB.CommandButton Command3 

      Caption         =   "-"

      Height          =   375

      Left            =   2520

      TabIndex        =   11

      Top             =   960

      Width           =   495

   End

   Begin VB.CommandButton Command2 

      Caption         =   "+"

      Height          =   375

      Left            =   1920

      TabIndex        =   10

      Top             =   960

      Width           =   495

   End

   Begin VB.CommandButton Command1 

      Caption         =   "9"

      Height          =   375

      Index           =   9

      Left            =   1320

      TabIndex        =   9

      Top             =   480

      Width           =   495

   End

   Begin VB.CommandButton Command1 

      Caption         =   "8"

      Height          =   375

      Index           =   8

      Left            =   720

      TabIndex        =   8

      Top             =   480

      Width           =   495

   End

   Begin VB.CommandButton Command1 

      Caption         =   "7"

      Height          =   375

      Index           =   7

      Left            =   120

      TabIndex        =   7

      Top             =   480

      Width           =   495

   End

   Begin VB.CommandButton Command1 

      Caption         =   "6"

      Height          =   375

      Index           =   6

      Left            =   1320

      TabIndex        =   6

      Top             =   960

      Width           =   495

   End

   Begin VB.CommandButton Command1 

      Caption         =   "5"

      Height          =   375

      Index           =   5

      Left            =   720

      TabIndex        =   5

      Top             =   960

      Width           =   495

   End

   Begin VB.CommandButton Command1 

      Caption         =   "4"

      Height          =   375

      Index           =   4

      Left            =   120

      TabIndex        =   4

      Top             =   960

      Width           =   495

   End

   Begin VB.CommandButton Command1 

      Caption         =   "3"

      Height          =   375

      Index           =   3

      Left            =   1320

      TabIndex        =   3

      Top             =   1440

      Width           =   495

   End

   Begin VB.CommandButton Command1 

      Caption         =   "2"

      Height          =   375

      Index           =   2

      Left            =   720

      TabIndex        =   2

      Top             =   1440

      Width           =   495

   End

   Begin VB.CommandButton Command1 

      Caption         =   "1"

      Height          =   375

      Index           =   1

      Left            =   120

      TabIndex        =   1

      Top             =   1440

      Width           =   495

   End

   Begin VB.CommandButton Command1 

      Caption         =   "0"

      Height          =   375

      Index           =   0

      Left            =   720

      TabIndex        =   0

      Top             =   1920

      Width           =   495

   End

End

Attribute VB_Name = "frmmain"

Attribute VB_GlobalNameSpace = False

Attribute VB_Creatable = False

Attribute VB_PredeclaredId = True

Attribute VB_Exposed = False

Private Data As Double

Private lOperation As Long

Private fClear As Boolean

Private Sub cmdDot_Click()

If InStr(1, Text1.Text, ".") <= 0 Then Text1.Text = Text1.Text & "."

End Sub

Private Sub Command1_Click(Index As Integer)

If fClear = True Then Text1.Text = "": fClear = False

Text1.Text = Text1.Text & Index

End Sub

Private Sub Command10_Click()

If fClear = False Then

Select Case lOperation

Case 0

Case 1: Text1.Text = Data + Val(Text1.Text)

Case 2: Text1.Text = Data - Val(Text1.Text)

Case 3: Text1.Text = Data * Val(Text1.Text)

Case 4: If Val(Text1.Text) = 0 Then MsgBox "除数不等于0": Exit Sub Else Text1.Text = Data / Val(Text1.Text)

Case 5: Text1.Text = Data ^ Val(Text1.Text)

End Select

End If

Data = Val(Text1.Text)

fClear = True

lOperation = 5

lblOperation.Caption = "^"

End Sub

Private Sub Command2_Click()

If fClear = False Then

Select Case lOperation

Case 0

Case 1: Text1.Text = Data + Val(Text1.Text)

Case 2: Text1.Text = Data - Val(Text1.Text)

Case 3: Text1.Text = Data * Val(Text1.Text)

Case 4: If Val(Text1.Text) = 0 Then MsgBox "除数不等于0": Exit Sub Else Text1.Text = Data / Val(Text1.Text)

Case 5: Text1.Text = Data ^ Val(Text1.Text)

End Select

End If

Data = Val(Text1.Text)

fClear = True

lOperation = 1

lblOperation.Caption = "+"

End Sub

Private Sub Command3_Click()

If fClear = False Then

Select Case lOperation

Case 0

Case 1: Text1.Text = Data + Val(Text1.Text)

Case 2: Text1.Text = Data - Val(Text1.Text)

Case 3: Text1.Text = Data * Val(Text1.Text)

Case 4: If Val(Text1.Text) = 0 Then MsgBox "除数不等于0": Exit Sub Else Text1.Text = Data / Val(Text1.Text)

Case 5: Text1.Text = Data ^ Val(Text1.Text)

End Select

End If

Data = Val(Text1.Text)

fClear = True

lOperation = 2

lblOperation.Caption = "-"

End Sub

Private Sub Command4_Click()

If fClear = False Then

Select Case lOperation

Case 0

Case 1: Text1.Text = Data + Val(Text1.Text)

Case 2: Text1.Text = Data - Val(Text1.Text)

Case 3: Text1.Text = Data * Val(Text1.Text)

Case 4: If Val(Text1.Text) = 0 Then MsgBox "除数不等于0": Exit Sub Else Text1.Text = Data / Val(Text1.Text)

Case 5: Text1.Text = Data ^ Val(Text1.Text)

End Select

End If

Data = Val(Text1.Text)

fClear = True

lOperation = 3

lblOperation.Caption = "*"

End Sub

Private Sub Command5_Click()

If fClear = False Then

Select Case lOperation

Case 0

Case 1: Text1.Text = Data + Val(Text1.Text)

Case 2: Text1.Text = Data - Val(Text1.Text)

Case 3: Text1.Text = Data * Val(Text1.Text)

Case 4: If Val(Text1.Text) = 0 Then MsgBox "除数不等于0": Exit Sub Else Text1.Text = Data / Val(Text1.Text)

Case 5: Text1.Text = Data ^ Val(Text1.Text)

End Select

End If

Data = Val(Text1.Text)

fClear = True

lOperation = 4

lblOperation.Caption = "/"

End Sub

Private Sub Command6_Click()

If fClear = False Then

Select Case lOperation

Case 0

Case 1: Text1.Text = Data + Val(Text1.Text)

Case 2: Text1.Text = Data - Val(Text1.Text)

Case 3: Text1.Text = Data * Val(Text1.Text)

Case 4: If Val(Text1.Text) = 0 Then MsgBox "除数不等于0": Exit Sub Else Text1.Text = Data / Val(Text1.Text)

Case 5: Text1.Text = Data ^ Val(Text1.Text)

End Select

End If

Data = Val(Text1.Text)

fClear = True

lOperation = 0

lblOperation.Caption = ""

End Sub

Private Sub Command7_Click()

If Val(Text1.Text) <= 0 Then MsgBox "开方数大于等于0"

Text1.Text = Sqr(Val(Text1.Text))

Data = Val(Text1.Text)

fClear = True

lOperation = 0

lblOperation.Caption = ""

End Sub

Private Sub Command8_Click()

Text1.Text = ""

lOperation = 0

lblOperation.Caption = ""

End Sub

Private Sub Command9_Click()

If Len(Text1.Text) > 0 Then Text1.Text = Left(Text1.Text, Len(Text1.Text) - 1)

End Sub

Private Sub Form_KeyPress(KeyAscii As Integer)

Select Case KeyAscii

Case Asc("0"): Command1_Click 0

Case Asc("1"): Command1_Click 1

Case Asc("2"): Command1_Click 2

Case Asc("3"): Command1_Click 3

Case Asc("4"): Command1_Click 5

Case Asc("5"): Command1_Click 4

Case Asc("6"): Command1_Click 6

Case Asc("7"): Command1_Click 7

Case Asc("8"): Command1_Click 8

Case Asc("9"): Command1_Click 9

Case Asc("."): cmdDot_Click

Case Asc("+"): Command2_Click

Case Asc("-"): Command3_Click

Case Asc("*"): Command4_Click

Case Asc("/"): Command5_Click

Case Asc("^"): Command10_Click

Case Asc("s"): Command7_Click

Case Asc("S"): Command7_Click

Case vbKeyBack: Command9_Click

Case Asc("`"): Command8_Click

Case Asc("="): Command6_Click

Case 13: Command6_Click

End Select

KeyAscii = 0

End Sub

以下是图片:

温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-05-24
我有这样一个程序,功能更加好,给我邮箱,我发给你去研究研究吧。
第2个回答  2009-05-24
'以下保存为 任务名称.frm
VERSION 5.00
Begin VB.Form Form1
Caption = "计算机"
ClientHeight = 4230
ClientLeft = 60
ClientTop = 750
ClientWidth = 3165
LinkTopic = "Form1"
MaxButton = 0 'False
MinButton = 0 'False
ScaleHeight = 4230
ScaleWidth = 3165
StartUpPosition = 2 '屏幕中心
Begin VB.Frame Frame1
Height = 3495
Left = 120
TabIndex = 1
Top = 600
Width = 2895
Begin VB.CommandButton cmdResult
Caption = "="
BeginProperty Font
Name = "宋体"
Size = 12
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 375
Left = 1080
TabIndex = 20
Top = 3000
Width = 1695
End
Begin VB.CommandButton cmdOff
Caption = "OFF"
Height = 375
Left = 1560
TabIndex = 19
Top = 240
Width = 495
End
Begin VB.CommandButton cmdCE
Caption = "CE"
Height = 375
Left = 2280
TabIndex = 18
Top = 240
Width = 495
End
Begin VB.CommandButton cmdchu
Caption = "/"
Height = 375
Left = 2280
TabIndex = 17
Top = 2520
Width = 495
End
Begin VB.CommandButton cmdjia
Caption = "+"
Height = 375
Left = 2280
TabIndex = 16
Top = 720
Width = 495
End
Begin VB.CommandButton cmd0
Caption = "0"
Height = 375
Left = 840
TabIndex = 15
Top = 2520
Width = 495
End
Begin VB.CommandButton cmd6
Caption = "6"
Height = 375
Left = 1560
TabIndex = 14
Top = 1320
Width = 495
End
Begin VB.CommandButton cmd8
Caption = "8"
Height = 375
Left = 840
TabIndex = 13
Top = 720
Width = 495
End
Begin VB.CommandButton cmd4
Caption = "4"
Height = 375
Left = 120
TabIndex = 12
Top = 1320
Width = 495
End
Begin VB.CommandButton cmd9
Caption = "9"
Height = 375
Left = 1560
TabIndex = 11
Top = 720
Width = 495
End
Begin VB.CommandButton cmd2
Caption = "2"
Height = 375
Left = 840
TabIndex = 10
Top = 1920
Width = 495
End
Begin VB.CommandButton cmdjian
Caption = "-"
Height = 375
Left = 2280
TabIndex = 9
Top = 1320
Width = 495
End
Begin VB.CommandButton cmdPoint
Caption = "."
BeginProperty Font
Name = "宋体"
Size = 12
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 375
Left = 1560
TabIndex = 8
Top = 2520
Width = 495
End
Begin VB.CommandButton cmdcheng
Caption = "*"
Height = 375
Left = 2280
TabIndex = 7
Top = 1920
Width = 495
End
Begin VB.CommandButton cmd5
Caption = "5"
Height = 375
Left = 840
TabIndex = 6
Top = 1320
Width = 495
End
Begin VB.CommandButton cmd3
Caption = "3"
Height = 375
Left = 1560
TabIndex = 5
Top = 1905
Width = 495
End
Begin VB.CommandButton cmd1
Caption = "1"
Height = 375
Left = 120
TabIndex = 4
Top = 1920
Width = 495
End
Begin VB.CommandButton cmd7
Caption = "7"
Height = 375
Left = 120
TabIndex = 3
Top = 720
Width = 495
End
Begin VB.CommandButton cmdChange
Caption = "+/-"
Height = 375
Left = 120
TabIndex = 2
Top = 2520
Width = 495
End
End
Begin VB.TextBox txt
Alignment = 1 'Right Justify
Enabled = 0 'False
BeginProperty Font
Name = "宋体"
Size = 10.5
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 375
Left = 120
Locked = -1 'True
TabIndex = 0
Top = 120
Width = 2895
End
Begin VB.Menu meuFile
Caption = "文件(&F)"
Begin VB.Menu meuExit
Caption = "退出(&X)"
Shortcut = ^X
End
End
End
Attribute VB_Name = "Form1"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Dim XiaoShu As Boolean
'在窗体变量中声明一个布尔值来判断是否按下了小数点键,防止txt中出现多个小数。如果已经输入了小数点则Xiaoshu为True,否则为False

Dim FuHao As Byte
'声明一个Byte来记录我们按下了什么符号,1为"+",2为"-",3为"*",4为"/"

Dim FirstNumber As Double
'声明一个变量来记录操作数的第一个数,如A+B,那么FirstNumber来记下A的值。

Dim DengHao As Boolean
'声明一个变量来记录是否按下了=号,如果按下了则为True

Private Sub cmd0_Click()
If txt.Text <> "" Then txt.Text = txt.Text + "0" '防止多个0在文本中出现
End Sub

Private Sub cmd1_Click() '按下1时
If Not DengHao Then '没按下等号
txt.Text = txt.Text + "1"
Else
txt.Text = "1" '按下了等号
DengHao = False
End If
End Sub

Private Sub cmd2_Click() '按下2时
If Not DengHao Then '没按下等号
txt.Text = txt.Text + "2"
Else
txt.Text = "2" '按下了等号
DengHao = False
End If
End Sub

Private Sub cmd3_click() '按下3时
If Not DengHao Then '没按下等号
txt.Text = txt.Text + "3"
Else
txt.Text = "3" '按下了等号
DengHao = False
End If
End Sub

Private Sub cmd4_Click() '按下4时
If Not DengHao Then '没按下等号
txt.Text = txt.Text + "4"
Else
txt.Text = "4" '按下了等号
DengHao = False
End If
End Sub

Private Sub cmd5_Click() '按下5时
If Not DengHao Then '没按下等号
txt.Text = txt.Text + "5"
Else
txt.Text = "5" '按下了等号
DengHao = False
End If
End Sub

Private Sub cmd6_Click() '按下6时
If Not DengHao Then '没按下等号
txt.Text = txt.Text + "6"
Else
txt.Text = "6" '按下了等号
DengHao = False
End If
End Sub

Private Sub cmd7_Click() '按下7时
If Not DengHao Then '没按下等号
txt.Text = txt.Text + "7"
Else
txt.Text = "7" '按下了等号
DengHao = False
End If
End Sub

Private Sub cmd8_Click() '按下8时
If Not DengHao Then '没按下等号
txt.Text = txt.Text + "8"
Else
txt.Text = "8" '按下了等号
DengHao = False
End If
End Sub

Private Sub cmd9_Click() '按下9时
If Not DengHao Then '没按下等号
txt.Text = txt.Text + "9"
Else
txt.Text = "9" '按下了等号
DengHao = False
End If
End Sub

Private Sub cmdCE_Click()
txt.Text = ""
XiaoShu = False
End Sub

Private Sub cmdChange_Click()
If (Sgn(Val(txt.Text))) = 1 Then txt.Text = "-" + txt.Text: Exit Sub '用Sgn来判断txt文本框内的值的符号。大于0的话就在前面加上"-"
If (Sgn(Val(txt.Text))) = -1 Then txt.Text = Abs(Val(txt.Text)) 'txt文本框的文本为大于0的数txt前面的"-"去掉。
End Sub

Private Sub cmdcheng_Click()
FirstNumber = Val(txt.Text)
FuHao = 3
txt.Text = ""
XiaoShu = False
End Sub

Private Sub cmdchu_Click()
FirstNumber = Val(txt.Text)
FuHao = 4
txt.Text = ""
XiaoShu = False
End Sub

Private Sub cmdjia_Click()
FirstNumber = Val(txt.Text)
FuHao = 1
txt.Text = ""
XiaoShu = False
End Sub

Private Sub cmdjian_Click()
FirstNumber = Val(txt.Text)
FuHao = 2
txt.Text = ""
XiaoShu = False
End Sub

Private Sub cmdOff_Click()
End
End Sub

Private Sub cmdPoint_Click()
If txt.Text = "" Then txt.Text = "0"
If Not XiaoShu Then '当我们以前没有按下小数点键时在txt中加上小数点
txt.Text = txt.Text + "."
XiaoShu = True
End If
End Sub

Private Sub cmdResult_Click()
If FuHao = 1 Then '按下了+号
txt.Text = FirstNumber + Val(txt.Text)
End If
If FuHao = 2 Then '按下了-号
txt.Text = FirstNumber - Val(txt.Text)
End If
If FuHao = 3 Then '按下了*号
txt.Text = FirstNumber * Val(txt.Text)
End If
If FuHao = 4 Then '按下了、号
txt.Text = FirstNumber / Val(txt.Text)
End If
DengHao = True '记录下按了=号
XiaoShu = False
End Sub

Private Sub meuExit_Click()
End
End Sub本回答被提问者采纳

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网