VB编写简单的计算器程序

VB编写简单的计算器程序,第1张

工具/材料

电脑

VB软件

01

打开VB,新建一个EXE文件。

02

画上四个方框,表示运算法则(即唯樱加减乘除四项),3个文本控件表示数渣山没,一个标签控件为“=”。并对控件进行命名。

03

然后进行代码编写。双击对应的按如纳钮控件,进入代码编写界面。Text3.Text = Val(Text1.Text) + Val(Text2.Text),就这一句只要更换把‘+’分别换成‘-’‘*’‘/’即可。

04

最后,按“F5”运行即可咯。

特别提示

VB的编写相对其他程序语言会简单一些,感兴趣者可以深入研究。

VB编写程序的步骤可以分为三步:

枯伏设计程序的界面,根据想要实现的功能画出程序的界面;编写代码是最枯燥的一步悉举,根据程序的功能,为每个控件元没陆携素编写代码,这是程序设计的关键所在;发布应用程序为程序创建安装项目。

分类: 电脑/网络 >>程序设计 >>其他编程语言

解析:

其实比较简单啦,用一个窗体就可以实现啦!

我自己写的,你可以看看

Option Explicit

Dim strNumber As String

Dim strPoint As String

Dim dblNum1 As Double

Dim intOperator As Integer

'清除结果绝敏

Private Sub cmdGT_Click()

txtDisplay.Text = "0."

strNumber = ""

strPoint = "."

intOperator = 7

End Sub

'输入数字

Private Sub cmdNumber_Click(Index As Integer)

strNumber = strNumber &cmdNumber(Index).Caption

txtDisplay.Text = strNumber &strPoint

End Sub

Private Sub cmdOnOff_Click()

End

End Sub

'运算过程

Private Sub cmdOperator_Click(Index As Integer)

Dim dblnum2 As Double

'是第一次单击运算符时并告枝,将输入的值先赋给第一个数,否则赋值给第二个数进行运算

If intOperator = 7 Then

dblNum1 = CDbl(txtDisplay.Text)

Else

dblnum2 = CDbl(Val(txtDisplay.Text))

'根据输入的符号进行运算

'求普通运算

Select Case intOperator

Case 0

dblNum1 = dblNum1 + dblnum2

Case 1

dblNum1 = dblNum1 - dblnum2

Case 2

dblNum1 = dblNum1 * dblnum2

Case 3

If dblnum2 <>0 Then

dblNum1 = dblNum1 / dblnum2

Else

MsgBox "除数不能为“0”!请友贺重新输入除数。", vbOKOnly + vbInformation, "除零错误"

Index = intOperator

End If

Case 6

dblNum1 = dblNum1 * dblnum2 / 100

End Select

End If

'取得当前输入的运算符,以做下次运算

intOperator = Index

strNumber = ""

txtDisplay = CStr(dblNum1)

'判断是否为文本框中的数字加点

If Not txtDisplay Like "*.*" Then

txtDisplay.Text = txtDisplay.Text &"."

End If

End Sub

Private Sub cmdOtherOper_Click(Index As Integer)

Dim dblNum As Double

'求平方根,平方,

dblNum = CDbl(Val(txtDisplay.Text))

Select Case Index

Case 0

'验证数据是否有效

If dblNum >= 0 Then

txtDisplay.Text = CStr(Sqr(dblNum))

Else

MsgBox "负数不能开平方根!", _

vbOKOnly + vbCritical, "开平方根错误"

End If

Case 1

txtDisplay.Text = CStr(dblNum ^ 2)

End Select

'判断是否为文本框中的数字加点

If Not txtDisplay Like "*.*" Then

txtDisplay.Text = txtDisplay.Text &"."

End If

End Sub

Private Sub cmdPoint_Click()

strNumber = strNumber &strPoint

strPoint = ""

End Sub

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)

'使被按下的数字键的对应按钮取得焦点

Select Case KeyCode

Case 48 To 57

cmdNumber(KeyCode - 48).SetFocus

Case 96 To 105

cmdNumber(KeyCode - 96).SetFocus

Case Else

'使按下的符号键对应的按钮取得焦点

If KeyCode = 107 Or (Shift = vbShiftMask And KeyCode = 187) Then

cmdOperator(0).SetFocus

cmdOperator_Click (0)

ElseIf KeyCode = 109 Or KeyCode = 189 Then

cmdOperator(1).SetFocus

cmdOperator_Click (1)

ElseIf KeyCode = 106 Or (Shift = vbShiftMask And KeyCode = 56) Then

cmdOperator(2).SetFocus

cmdOperator_Click (2)

ElseIf KeyCode = 111 Or KeyCode = 191 Then

cmdOperator(3).SetFocus

cmdOperator_Click (3)

ElseIf KeyCode = 13 Then

cmdOperator(7).SetFocus

cmdOperator_Click (7)

ElseIf KeyCode = 8 Then

cmdGT.SetFocus

Call cmdGT_Click

End If

End Select

End Sub

Private Sub Form_KeyPress(KeyAscii As Integer)

'将合法的数据输入到文本框

Select Case KeyAscii

Case 48 To 58

'调用数字键点击处理程序

cmdNumber_Click KeyAscii - 48

KeyAscii = 0

Case 46

'调用小数点输入

cmdPoint_Click

KeyAscii = 0

Case 13

'当敲击回车时,不能触发Form的 KeyUp 事件,因此在这里设置文本框的焦点

txtDisplay.SetFocus

Case Else

KeyAscii = 0

End Select

End Sub

Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)

txtDisplay.SetFocus

End Sub

Private Sub Form_Load()

strNumber = ""

strPoint = "."

intOperator = 7

End Sub


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12567766.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存