参考下:

计算器的程序,很简单,只弄了+-法,乘除没弄,只要把代码看懂照着+-法改一下就行了,不过涉及到多级运算只用一个LastClick是不行的

程序的控件就两种

CommandBotton和TextBox都是最基本的

先创建十一个CommandBotton,Caption改为0-9以及一个"."(小数点)

创建三个CommandBotton,Caption改为“-”,“+”“=”

创建五个CommandBotton,Caption改为“CM”(clearmemory) “MR”(memoryrecall) “MS”(memorysave) “C”(clear) “AC”(allclear)

再创建个TextBox

下面的是对应代码,很清楚

不懂来问我`~

Dim Counter As Double ‘这个用来记录结果

Dim Memory As Double ‘用来记录你保存的数,这个我们用的科学计算器里也有

Dim Reg As Double ‘这个也是用来记录结果

Dim CalcNumber As Long ‘这个是判断:1当之前点过一次+或-时再点一次运算结果,2如果前面没点过+或-则不进行运算

Dim DisplayFromNew As Boolean ‘这个用来判断输入框状态:是接着输入还是从新输入新的数

Dim AlreadyDecimalThere As Boolean ‘这个用来判断是否能用小数点

Dim LastClick As String ‘这个用来记录最后一次选择的运算法则

Private Sub Form_Load()

Display.Text = "0"

Reg = 0

CalcNumber = 0

DisplayFromNew = True

AlreadyDecimalThere = False

End Sub

Private Sub AllClear_Click() ‘这个不用说了,是全部清空

DisplayFromNew = True ‘恢复到初始状态

Counter = 0

Display.Text = "0" ‘清空输入框

CalcNumber = 0

Reg = 0

AlreadyDecimalThere = False ‘恢复到初始状态

End Sub

Private Sub Clear_Click() ‘清空,但不清空纪录

DisplayFromNew = True

Display.Text = "0"

End Sub

Private Sub ClearMemory_Click() ‘清空纪录

Memory = 0

End Sub

Private Sub Decimal_Click() ‘关于小数点的

If AlreadyDecimalThere = False Then

AddDisplayDigit "."

AlreadyDecimalThere = True ‘每次输入只能输一次小数点

End If

End Sub

Private Sub Equals_Click() ‘等号时的

If LastClick = "Minus" Then

If CalcNumber = 0 Then

Reg = CDbl(Display.Text) ‘记录

DisplayFromNew = True

CalcNumber = 1

Else ‘这个的意思是,如果只点了法则(+或-)之后没点数,就加上前面输的数,但我觉得这样就等于前面输得数的2倍(+时)或0(-时),所以不用这么麻烦

Counter = Reg - CDbl(Display.Text)

Display.Text = CStr(Counter)

DisplayFromNew = True

AlreadyDecimalThere = False

Reg = CDbl(Display.Text)

End If

ElseIf LastClick = "Addition" Then ‘这是加法,和减法一样

If CalcNumber = 0 Then

Reg = CDbl(Display.Text)

DisplayFromNew = True

CalcNumber = 1

Else

Counter = Reg + CDbl(Display.Text)

Display.Text = CStr(Counter)

DisplayFromNew = True

AlreadyDecimalThere = False

Reg = CDbl(Display.Text)

End If

End If

CalcNumber = 0

End Sub

Sub AddDisplayDigit(Addition As String) ‘这一段十分重要,也是大家要学习的,就是自己创建一个函数,这样应用起来会十分方便

If DisplayFromNew = True Then

Display.Text = Addition ‘当DisplayFromNew = True时(大家注意杂那几种情况下= True)输入栏从新显示刚输入的数

DisplayFromNew = False ‘之后立即变为False,因为要接着这个数继续输入

Else

Display.Text = Display.Text & Addition ‘当DisplayFromNew = False 就是接着输入栏里已有的数字继续输入

End If

End Sub

注:为何要弄两种情况呢,因为当点击-或+时,要求输入栏从新记录

Private Sub MemorySave_Click() ‘这是保存记录

If DisplayFromNew = False Then

Memory = CDbl(Display.Text)

End If

End Sub

Private Sub MemoryRecall_Click() ‘打开纪录

Display = CStr(Memory)

End Sub

Private Sub Minus_Click() ‘点击

If CalcNumber = 0 Then

Reg = CDbl(Display.Text)

DisplayFromNew = True

CalcNumber = 1

Else ‘这个就是如果前面输过一次-号,再点-号就运算结果,这一点是很重要的,如果不加这个就无法进行连续运算 Counter = Reg - CDbl(Display.Text)

Display.Text = CStr(Counter)

DisplayFromNew = True

AlreadyDecimalThere = False

Reg = CDbl(Display.Text)

End If

LastClick = "Minus"

End Sub

Private Sub Plus_Click() ‘和减法一样

If CalcNumber = 0 Then

Reg = CDbl(Display.Text)

DisplayFromNew = True

CalcNumber = 1

Else

Counter = Reg + CDbl(Display.Text)

Display.Text = CStr(Counter)

DisplayFromNew = True

AlreadyDecimalThere = False

Reg = CDbl(Display.Text)

End If

LastClick = "Addition"

End Sub

‘下面的就简单了0-9,不过用到了前面定义的函数AddDisplayDigit,大家看到这个自定义函数的作用了吧

Private Sub Nine_Click()

AddDisplayDigit "9"

End Sub

Private Sub Eight_Click()

AddDisplayDigit "8"

End Sub

Private Sub Seven_Click()

AddDisplayDigit "7"

End Sub

Private Sub Six_Click()

AddDisplayDigit "6"

End Sub

Private Sub Five_Click()

AddDisplayDigit "5"

End Sub

Private Sub Four_Click()

AddDisplayDigit "4"

End Sub

Private Sub Three_Click()

AddDisplayDigit "3"

End Sub

Private Sub Two_Click()

AddDisplayDigit "2"

End Sub

Private Sub One_Click()

AddDisplayDigit "1"

End Sub

Private Sub Zero_Click()

AddDisplayDigit "0"

End Sub

怎么做加减计算机程序vb,如何用VB设计一个简单计算器能进行加减乘除运算?...相关推荐

  1. c语言float如何做减法,利用c语言设计开发一个简单计算器,可进行加减乘除运算....

    共回答了18个问题采纳率:94.4% #include #include void add(float num1,float num2) { printf("num1 + num2 = %6 ...

  2. C#设计一个简单计算器,实现两个数的加、减、乘、除、求幂等计算

    设计一个简单计算器,实现两个数的加.减.乘.除.求幂等计算 using System; using System.Collections.Generic; using System.Component ...

  3. 如何用Java设计一个简单的窗口界面(学习中.1)

    如何用Java设计一个简单的窗口界面 一.前言 二.简单了解 1.Swing简介 2.框架(frame) 3.层次 三.步骤 1.打开eclipse,依次创建项目,包,类. 2.代码 2.1最简单的可 ...

  4. 怎么做加减计算机程序vb,怎样使VB做一个加减乘除小程序,麻烦了,快点啊!!...

    繁华若梦 回答时间:2019-12-05 向TA提问 首先,创建两个文本框,命名为aTextbox和bTextbox 再创建一个文本框,命名为sumTextbox 再创建4个按钮,命名为 aButto ...

  5. c语言计算器实现简单的四则运算.(加,减,乘,除)实验报告,C语言数据结构“简单计算器。”1、简单计算器。请按照四则运算加、减、乘、除、幂(^)和括号的优先关系和惯例,编写计算器程...

    共回答了23个问题采纳率:82.6% #include #define MaxSize 99 void trans(char str[],char exp[]) /*将算术表达式转换成后追表达式*/ ...

  6. 如何用Java设计一个简单的窗口界面(初级二)

    如何添加组件 一.准备 1.这里介绍的是eclipse 2.常用组件的了解 3.常用布局 1.BorderLayout 布局 2.FlowLayout 布局 二.代码 1.简单的 2.构造中间容器,顺 ...

  7. 使用Qt做一个简单计算器

    title: Calculator date: 2022-09-04 11:10:12 tags: [Qt, 应用, C++] typora-root-url: Calculator 使用Qt做一个简 ...

  8. 十位数连加 c语言,用C语言编写一个简易计算器可实现加减乘除,连加连减,连乖连除....

    用C语言编写一个简易计算器可实现加减乘除,连加连减,连乖连除. 用C语言编写一个简易计算器可实现加减乘除,连加连减,连乖连除. 人气:435 ℃时间:2020-04-10 06:55:13 优质解答 ...

  9. C语言设计一个简单的计算器,完成两个数的加、减、乘、除、取余。(根据输入的运算符,选择相应的运算,用switch语句实现。

    设计一个简单的计算器,完成两个数的加.减.乘.除.取余.(根据输入的运算符,选择相应的运算,用switch语句实现. 实验代码: #include <stdio.h> #include & ...

最新文章

  1. docker安装Elasticsearch7.6集群并设置密码
  2. 即时通信是机遇也是挑战
  3. [OpenStack] OpenStack Essex - Glance 安装部署与命令行详解
  4. 直接引用arXiv论文不规范?试试这个小工具,秒变正式发表链接,上交大校友开发...
  5. E2. Rubik‘s Cube Coloring (hard version) dp,满二叉树(2300)
  6. Windows Server Core管理之WinRM
  7. 手机端刷recovery工具_MIUI/REDMIN手机玩机汇集
  8. C#中将DLL文件打包到EXE文件
  9. CentOS安装Nagios网络监视工具
  10. c语言趣味小程序,一个有趣的小程序
  11. fiddler打开后 浏览器就上不了网的解决方法
  12. C语言实现推箱子game
  13. u盘启动怎么修复计算机,计算机黑屏怎么办 如何使用u盘启动制作系统
  14. English trip -- Phonics 1 ar
  15. Promise(一)介绍、fs读取文件、AJAX请求
  16. 【汇正财经】什么是板块轮动?有什么规律?
  17. 【体系-微服务架构】23-Spring Cloud Spring生态链(Alibaba)
  18. hive sql 分组随机取数
  19. s8更新系统提示网络或服务器出错,S8决赛IG3:0夺冠,各大区服务器崩溃!IG夺冠为何会全网刷屏?...
  20. Android使用drawBitmapMesh方法实现旗帜飞扬,舞动的图片效果

热门文章

  1. php使用递归完成以下图形,php试题与答案(一)
  2. 伪原创之造就百万点击率
  3. 【文献阅读】PQA——感知问答的数据集和方法(Y. Qi等人,CVPR,2021)
  4. 位、字节、比特、拜特、字、双字、四字
  5. 2019年研究生推免面试经验总结
  6. 图形界面介绍Set Preference—Design
  7. 使用 SQL 实现同比环比分析
  8. 210. 课程表 II(拓扑排序,Kahn 算法)
  9. java pdf 水印_Java在PDF中添加水印(文本/图片水印)
  10. MySQL的MVCC机制看完这篇你还不懂,算我输