零基础VB制作简易计算器教程
简易计算器VB编程说明
![简易计算器VB编程说明](https://img.taocdn.com/s3/m/2126e8295901020207409cf4.png)
一.设计目的用VB语言编写一个计算器二.设计要求1.能够完成浮点数的加,减,乘,除,平方(根),倒数,三角函数及进制转换等2.能够实现退格和清除功能;3.初始值为0.0;4.高位数的0不出现;5.应用控件数组实现。
6. 利用函数的调用实现不同进制数之间的转换三.总体设计系统结构功能图如下:四.界面设计1. 控件属性列表如下:2.界面如下:五.程序如下:Public sum As Double ’定义全局变量Public k As StringPublic Function DEC_to_BIN(Dec As Long) As String ’定义十进制数转化成二进制数函数DEC_to_BIN = ""Do While Dec > 0DEC_to_BIN = Dec Mod 2 & DEC_to_BINDec = Dec \ 2LoopEnd FunctionPublic Function DEC_to_HEX(Dec As Long) As String ’定义十进制数转化成十六进制数函数Dim a As StringDEC_to_HEX = ""Do While Dec > 0a = CStr(Dec Mod 16)Select Case aCase "10": a = "A"Case "11": a = "B"Case "12": a = "C"Case "13": a = "D"Case "14": a = "E"Case "15": a = "F"End SelectDEC_to_HEX = a & DEC_to_HEXDec = Dec \ 16LoopEnd FunctionPublic Function DEC_to_OCT(Dec As Long) As String ’定义十进制数转化成八进制数函数DEC_to_OCT = ""Do While Dec > 0DEC_to_OCT = Dec Mod 8 & DEC_to_OCT Dec = Dec \ 8LoopEnd FunctionPrivate Sub Command1_Click(Index As Integer) Select Case IndexCase 1Text1.Text = Text1.Text & 1Case 2Text1.Text = Text1.Text & 2Case 3Text1.Text = Text1.Text & 3Case 4Text1.Text = Text1.Text & 4Case 5Text1.Text = Text1.Text & 5Case 6Text1.Text = Text1.Text & 6Case 7Text1.Text = Text1.Text & 7Case 8Text1.Text = Text1.Text & 8Case 9Text1.Text = Text1.Text & 9Case 0Text1.Text = Text1.Text & 0Case 10Text1.Text = Text1.Text & "."End SelectEnd SubPrivate Sub Command10_Click()sum = Text1.TextText1.Text = ""k = "x^2"End SubPrivate Sub Command11_Click() ’求倒数a = Val(Text1.Text)If a = 0 ThenPrint MsgBox("分母不能为零!", 48, "错误") Text1.Text = ""Elsesum = 1 / aText1.Text = sumEnd IfEnd SubPrivate Sub Command12_Click()a = Val(Text1.Text)sum = Cos(a)Text1.Text = sumEnd SubPrivate Sub Command13_Click()a = Val(Text1.Text)sum = Sin(a)Text1.Text = sumEnd SubPrivate Sub Command14_Click() ’进制转换主程序Dim s As Longs = Text1.TextIf Combo1.Text = "二进制" ThenText2.Text = DEC_to_BIN(s)ElseIf Combo1.Text = "八进制" ThenText2.Text = DEC_to_OCT(s)ElseIf Combo1.Text = "十六进制" ThenText2.Text = DEC_to_HEX(s)End IfEnd SubPrivate Sub Command15_Click()a = Val(Text1.Text)sum = Sqr(a)Text1.Text = sumEnd SubPrivate Sub Command2_Click()sum = Text1.TextText1.Text = ""k = "+"End SubPrivate Sub Command3_Click()sum = Text1.TextText1.Text = ""k = "-"End SubPrivate Sub Command4_Click()sum = Text1.TextText1.Text = ""k = "*"End SubPrivate Sub Command5_Click()sum = Text1.TextText1.Text = ""k = "/"End SubPrivate Sub Command6_Click() ’加、减、乘、除的计算Dim a As Doublea = Val(Text1.Text)If k = "+" Thensum = sum + aText1.Text = sumElseIf k = "-" Thensum = sum - aText1.Text = sumElseIf k = "x^2" Thensum = sum * sumText1.Text = sumElseIf k = "*" Thensum = sum * aText1.Text = sumElseIf k = "/" ThenIf a = 0 ThenPrint MsgBox("分母不能为零!", 48, "错误") ’除数不能为零Text1.Text = ""Elsesum = sum / aText1.Text = sumEnd IfEnd IfEnd SubPrivate Sub Command7_Click() ’退出Unload Form1End SubPrivate Sub Command8_Click() ’清除Text1.Text = ""End SubPrivate Sub Command9_Click() ’退格If Text1.Text = "" ThenExit SubEnd IfText1.Text = Left(Text1.Text, Len(Text1.Text) - 1) End Sub。
VB简单计算器(截图附代码)
![VB简单计算器(截图附代码)](https://img.taocdn.com/s3/m/7e1a417402768e9951e7381b.png)
VB程序简单计算器最近学完VB,感觉很好,写了个计算器程序,虽然花了不少时间,可也着实高兴。
其中遇到很多问题,最终也在各种资料中得到解决。
现在附上截图和全部代码,希望和大家交流一下,相互学习。
也希望能帮助到准备做计算器的同学。
计算器最终执行文件图标:计算器包括三个窗体(form):主页面form1:其中的“欢迎各位到此一游”是闪烁效果,呵呵,是自己想着无聊,就想出这么个玩意。
与计算器计算功能无关。
具体实现看下来代码。
Form1的实现代码:Public haha As BooleanPrivate Sub Command1_Click()Dim a As Integera = MsgBox("亲爱的你,真的想要退出本系统吗?", _vbYesNo + vbInformation + vbDefaultButton1, "退出系统前的询问撒(⊙o⊙)")If a = 6 Then '表示当选择“是”的时候的返回值EndEnd IfEnd SubPrivate Sub Command2_Click()Me.HideForm2.ShowEnd SubPrivate Sub Command3_Click()Me.HideForm3.ShowEnd SubPrivate Sub Form_Load()haha = FalseEnd SubPrivate Sub Timer1_Timer()haha = Not hahaIf haha ThenLabel2.ForeColor = &HFF00FFElseLabel2.ForeColor = vbWhiteEnd IfEnd Sub有些像图像等一些可见的控件属性就没在代码里写了,直接在属性里设置了。
页面(form2):此页面将鼠标点上去,还有意想不到的效果喲。
全部代码为:Dim isFocus1, isFocus2 As BooleanPrivate Sub Command1_Click()If isFocus1 Then '判断焦点在那个文本框中,便于实现按钮输入Text1.Text = Text1.Text & 0End IfIf isFocus2 ThenText2.Text = Text2.Text & 0End IfEnd SubPrivate Sub Command10_Click() If isFocus1 ThenText1.Text = Text1.Text & 9 End IfIf isFocus2 ThenText2.Text = Text2.Text & 9 End IfEnd SubPrivate Sub Command11_Click() If isFocus1 ThenText1.Text = Text1.Text & "." End IfIf isFocus2 ThenText2.Text = Text2.Text & "." End IfEnd SubPrivate Sub Command12_Click() If isFocus1 ThenText1.Text = -Val(Text1.Text)End IfIf isFocus2 ThenText2.Text = -Val(Text2.Text)End IfEnd SubPrivate Sub Command13_Click()Dim a As Integera = Val(Text1.Text) + Val(Text2.Text)Text3.Text = Val(Text1.Text) & "+" & Val(Text2.Text) & "=" & aIf Text1.Text = "" Or Text2.Text = "" ThenMsgBox "哼哼,双目运算一定要是两个数喔" & vbCrLf & vbCrLf & _ "不用说,补上去是必须的撒", vbCritical, "温馨小提醒(*^__^*)" End IfEnd SubPrivate Sub Command14_Click()Dim a As Integera = Val(Text1.Text) - Val(Text2.Text)Text3.Text = Val(Text1.Text) & "-" & Val(Text2.Text) & "=" & aIf Text1.Text = "" Or Text2.Text = "" ThenMsgBox "哼哼,双目运算一定要是两个数喔" & vbCrLf & vbCrLf & _ "不用说,补上去是必须的撒", vbCritical, "温馨小提醒(*^__^*)" End IfEnd SubPrivate Sub Command15_Click()a = Val(Text1.Text) * Val(Text2.Text)Text3.Text = Val(Text1.Text) & "×" & Val(Text2.Text) & "=" & aIf Text1.Text = "" Or Text2.Text = "" ThenMsgBox "哼哼,双目运算一定要是两个数喔" & vbCrLf & vbCrLf & _ "不用说,补上去是必须的撒", vbCritical, "温馨小提醒(*^__^*)" End IfEnd SubPrivate Sub Command16_Click() '除法的特殊性,除数不能为零If Val(Text2.Text) Thena = Val(Text1.Text) / Val(Text2.Text)Text3.Text = Val(Text1.Text) & "÷" & Val(Text2.Text) & "=" & aIf Text1.Text = "" Or Text2.Text = "" ThenMsgBox "哼哼,双目运算一定要是两个数喔" & vbCrLf & vbCrLf & _ "不用说,补上去是必须的撒", vbCritical, "温馨小提醒(*^__^*)" End IfElseText3.Text = "无穷大∞"MsgBox "亲,除数不可以为零的哟!", vbInformation, "矮油,不得了嘞(*^__^*)"Text2.Text = ""Text2.SetFocusEnd IfEnd SubPrivate Sub Command17_Click() '实现清零,并将焦点给文本框1Text1.Text = ""Text2.Text = ""Text3.Text = ""Text1.SetFocusEnd SubPrivate Sub Command18_Click()Me.Hide '进入计算器1Form1.ShowEnd SubPrivate Sub Command2_Click() If isFocus1 ThenText1.Text = Text1.Text & 1 End IfIf isFocus2 ThenText2.Text = Text2.Text & 1 End IfEnd SubPrivate Sub Command3_Click() If isFocus1 ThenText1.Text = Text1.Text & 2 End IfIf isFocus2 ThenText2.Text = Text2.Text & 2 End IfEnd SubPrivate Sub Command4_Click() If isFocus1 ThenText1.Text = Text1.Text & 3 End IfIf isFocus2 ThenText2.Text = Text2.Text & 3 End IfEnd SubPrivate Sub Command5_Click() If isFocus1 ThenText1.Text = Text1.Text & 4 End IfIf isFocus2 ThenText2.Text = Text2.Text & 4 End IfEnd SubPrivate Sub Command6_Click() If isFocus1 ThenText1.Text = Text1.Text & 5 End IfIf isFocus2 ThenText2.Text = Text2.Text & 5 End IfEnd SubPrivate Sub Command7_Click() If isFocus1 ThenText1.Text = Text1.Text & 6 End IfIf isFocus2 ThenText2.Text = Text2.Text & 6 End IfEnd SubPrivate Sub Command8_Click() If isFocus1 ThenText1.Text = Text1.Text & 7 End IfIf isFocus2 ThenText2.Text = Text2.Text & 7 End IfEnd SubPrivate Sub Command9_Click() If isFocus1 ThenText1.Text = Text1.Text & 8End IfIf isFocus2 ThenText2.Text = Text2.Text & 8End IfEnd SubPrivate Sub Form_Load()isFocus1 = False: isFocus2 = FalseEnd SubPrivate Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)Label4.ForeColor = vbBlackLabel4.FontUnderline = FalseLabel4.FontBold = FalseEnd SubPrivate Sub Label4_Click()Form3.ShowEnd SubPrivate Sub Label4_MouseMove(Button As Integer, Shift As Integer, X AsSingle, Y As Single)Label4.ForeColor = vbGreen Label4.FontUnderline = True Label4.FontBold = True End SubPrivate Sub Text1_GotFocus() isFocus1 = TrueisFocus2 = FalseEnd SubPrivate Sub Text2_GotFocus() isFocus2 = TrueisFocus1 = FalseEnd Sub页面(form3):这里面的亮点自己找哦。
VB简易计算器代码
![VB简易计算器代码](https://img.taocdn.com/s3/m/08255862dc36a32d7375a417866fb84ae45cc38f.png)
VB简易计算器代码以下是一个简单的VB计算器代码:```Public Class Form1Dim firstNum As Double ' 第一个数字Dim secondNum As Double ' 第二个数字Dim operation As Integer ' 1-加法,2-减法,3-乘法,4-除法Private Sub Button0_Click(sender As Object, e As EventArgs) Handles Button0.ClickTextBoxResult.Text = TextBoxResult.Text & "0"End SubPrivate Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.ClickTextBoxResult.Text = TextBoxResult.Text & "1"End SubPrivate Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.ClickTextBoxResult.Text = TextBoxResult.Text & "2"End SubHandles Button3.ClickTextBoxResult.Text = TextBoxResult.Text & "3"End SubPrivate Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.ClickTextBoxResult.Text = TextBoxResult.Text & "4"End SubPrivate Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.ClickTextBoxResult.Text = TextBoxResult.Text & "5"End SubPrivate Sub Button6_Click(sender As Object, e As EventArgs) Handles Button6.ClickTextBoxResult.Text = TextBoxResult.Text & "6"End SubPrivate Sub Button7_Click(sender As Object, e As EventArgs) Handles Button7.ClickTextBoxResult.Text = TextBoxResult.Text & "7"End SubHandles Button8.ClickTextBoxResult.Text = TextBoxResult.Text & "8"End SubPrivate Sub Button9_Click(sender As Object, e As EventArgs) Handles Button9.ClickTextBoxResult.Text = TextBoxResult.Text & "9"End SubPrivate Sub ButtonDot_Click(sender As Object, e As EventArgs) Handles ButtonDot.ClickIf Not TextBoxResult.Text.Contains(".") ThenTextBoxResult.Text = TextBoxResult.Text & "."End IfEnd SubPrivate Sub ButtonAdd_Click(sender As Object, e As EventArgs) Handles ButtonAdd.ClickfirstNum = Double.Parse(TextBoxResult.Text)TextBoxResult.Text = ""operation = 1End SubPrivate Sub ButtonSubtract_Click(sender As Object, e As EventArgs) Handles ButtonSubtract.ClickfirstNum = Double.Parse(TextBoxResult.Text)TextBoxResult.Text = ""operation = 2End SubPrivate Sub ButtonMultiply_Click(sender As Object, e As EventArgs) Handles ButtonMultiply.ClickfirstNum = Double.Parse(TextBoxResult.Text)TextBoxResult.Text = ""operation = 3End SubPrivate Sub ButtonDivide_Click(sender As Object, e As EventArgs) Handles ButtonDivide.ClickfirstNum = Double.Parse(TextBoxResult.Text)TextBoxResult.Text = ""operation = 4End SubPrivate Sub ButtonClear_Click(sender As Object, e As EventArgs) Handles ButtonClear.ClickTextBoxResult.Text = ""End SubPrivate Sub ButtonEquals_Click(sender As Object, e As EventArgs) Handles ButtonEquals.ClickDim result As DoublesecondNum = Double.Parse(TextBoxResult.Text)Select Case operationCase 1result = firstNum + secondNumCase 2result = firstNum - secondNumCase 3result = firstNum * secondNumCase 4result = firstNum / secondNumEnd SelectTextBoxResult.Text = result.ToStringEnd SubEnd Class```这个计算器包括数字按钮0-9、小数点按钮、加法、减法、乘法、除法和等于按钮。
VB简易计算器的制作
![VB简易计算器的制作](https://img.taocdn.com/s3/m/0697e2ea856a561252d36fb6.png)
问题四: 语句格式是什么? 问题四:select case 语句格式是什么?
Select Case 表达式 Case 表达式值一 语句块一 Case 表达式值二 语句块二 … Case Else 语句块n 语句块 End Select
制作界面
一、先作一个框架frame1,清空frame1的 caption属性。(作用?) 二、拉出一个文本框,设置为右对齐。 (作用?) 三、拉出一组“cmdshu”的命令按钮控件数 组, caption分别为 “0”,“1”,“2”,“3”,“4”,“5”, “6”,“7”,“8”,“9”,“.”。 index的值分别为0,1,2,3,4,5,6,用开始输入? 怎样判断应该用连接或者用开始输入?
答:可以添加一个用来判断的变量 问题三: 问题三:
怎样判断该用什么运算? 怎样判断该用什么运算? 可以用一个变量记住点击的运算符, 答:可以用一个变量记住点击的运算符,即 是记住点击时返回的index值。然后用select case 值 然后用 是记住点击时返回的 语句。 语句。
制作界面
四、拉出一组“cmdsuanfu”的命令按钮控件数 组,caption分别为“+”,“-”,“*”,“/”。index的值分 别为0,1,2,3。 cmdresult” 五、拉出一个“cmdresult” 的命令按钮。
算法
将输入文本框的第一个数作为num1, 将输入文本框的第二个数作为num2,然后按 照所选择的运算,算出结果输出到文本框。
将输入文本框的第一个数作为num1将输入文本框的第二个数作为num2然后按照所选择的运算算出结果输出到文本框
简易计算器的制作 简易计算器的制作 计算器
广东广雅中学
控件数组的使用
VB编写简易计算器(附图)
![VB编写简易计算器(附图)](https://img.taocdn.com/s3/m/126067d79b89680202d8252c.png)
For personal use only in study and research;not for commercial use用VB6.0编写简易计算器效果图:废话不多说,直接上步骤一、创建控件组1、创建控件组的方法??首先创建一个命令按钮,调整其大小(觉得合适就行),名称为Command1,Caption 属性为数字 0 ;然后进行“复制”和“粘贴”,当选择“粘贴”时,出现对话框提示已有一个同名控件,询问是否创建控件组,选择“是”后,即创建了一个名为“Command”的控件组。
这时,第一个按钮的Index属性值默认为“0”,第二个的Index属性值自动设为“1”,并且大小与第一个按钮相同,只需修改其 Caption 属性为数字“1”并将其拖至合适位置即可。
此后继续使用“粘贴”的方法建立其他控件组中其余按钮,共20个按钮,每建立一个,就将它拖到合适处,并修改相应的Caption属性值。
2、各控件组其属性设置如下:二、编写代码Dim s1 As Single, s2 As Single, ysf As String'定义两个单精度数变量用与存放参与运算的数,一个字符型存放运算符Private Sub Command1_Click(Index As Integer)Text1.Text = Text1.Text & Command1(Index).Caption'将command1的单击事件与文本框显示的内容连接End SubPrivate Sub Command2_Click()Text1.Text = Text1.Text + "."If (InStr(Text1.Text, ".") = 1) Then'第一位不能为小数Text1.Text = ""End IfIf InStr(Text1.Text, ".") < Len(Text1.Text) Then '防止出现两个小数点Text1.Text = Left(Text1.Text, Len(Text1.Text) - 1)End IfEnd SubPrivate Sub Command3_Click()s2 = Val(Text1.Text) '开始加减乘除运算Select Case ysfCase "+"Text1.Text = s1 + s2Case "-"Text1.Text = s1 - s2Case "*"Text1.Text = s1 * s2Case "/"If s2 = 0 ThenMsgBox "分母不能为零!"Text1.Text = ""ElseText1.Text = s1 / s2End IfEnd SelectText1 = IIf(Left(Text1.Text, 1) = ".", 0 & Text1.Text, Text1.Text) '这个很关键,如果没有这个的话,得出小于1的小数前面没有0End SubPrivate Sub Command4_Click()If Text1.Text = "" Then '文本为空就结束Exit SubEnd IfText1.Text = Left(Text1.Text, Len(Text1.Text) - 1) '文本退一格End SubPrivate Sub Command5_Click()Text1.Text = "" '清除当前框内文本End SubPrivate Sub Command6_Click(Index As Integer)s1 = Val(Text1.Text) '将s1隐藏起来ysf = Command6(Index).CaptionText1.Text = ""End SubPrivate Sub Command7_Click()If Left(Text1.Text, 1) <> "-" Then '判断作为负数Text1.Text = "-" & Text1.TextElseText1.Text = Right(Text1.Text, Len(Text1.Text) - 1)End IfEnd SubPrivate Sub Command8_Click()Text1.Text = Text1.Text * Text1.Text '平方End Sub各位朋友,可以将红色代码复制到相应位置,不清楚的可以全选复制,但是一定要按照我的步骤和给的名称来哦!还可以再添加按钮Private Sub Command9_Click() '这是退出代码EndEnd Sub三、测试,成功的话给个好评哦!谢谢各位下载与支持!这个可以编写作为作业哦!仅供个人参考仅供个人用于学习、研究;不得用于商业用途。
用VB6.0编写一个小计算器
![用VB6.0编写一个小计算器](https://img.taocdn.com/s3/m/ef546a9251e79b896802262b.png)
在左侧工具栏中,选择输入框,在窗口界面中
设置三个合适大小的输入框
制作中...
修改输入框内文字:选择输入框在属性处找到
text,将右边文字修改。
添加一个按钮,名称和软件名相同改法
双击软件界面 提示:一号框(左上)×二号框(右上)=三号框 (左下),我们要输入:(注意空格)
PrivateSubCommand1_Click() OnErrorGoto1
用 VB6.0 编写一个小计算器
y2a3d 计算器在线计算 /
教大家制作一个小软件——乘法计算器软件
VB6.0 方法
打开 VB6.0 选择“标准 EXE”
首先,在属性中的 caption 处,将 Form1(软
件名)改为自己喜爱的名字
按住窗口的调整按钮,将窗口调整为合适大小
Text3.Text=Text1.Text*Text2.Text ExitSub
1: msgbox 请输入正确数据,,出错啦...
EndSub 点击文件→生成工程
生成成功! 上面框内输入乘数,点击按钮,计算出结果显 示在下面框内!
注意事项 千万注意代码中的空格
简易计算器的制作
![简易计算器的制作](https://img.taocdn.com/s3/m/87c42556c381e53a580216fc700abb68a982adb0.png)
简易计算器的制作在本文中,我们将介绍如何使用Visual FoxPro(VFP)制作一个简易计算器。
Visual FoxPro是一种开发工具,可以用于创建数据库应用程序和开发Windows桌面应用程序。
步骤1: 创建新的Visual FoxPro项目首先,打开Visual FoxPro并创建一个新的项目。
在“文件”菜单中选择“新建”,然后选择“项目”。
输入一个项目名称,选择一个合适的位置,然后点击“确定”。
步骤2:创建一个新的表单接下来,我们需要创建一个新的表单来作为计算器的界面。
在项目资源管理器中,右键点击“表单”文件夹,并选择“新建”。
输入一个表单名称,然后点击“确定”。
步骤3:添加控件步骤5:添加按钮事件首先,我们需要声明变量来存储用户输入的数字。
在按钮事件代码中,添加以下代码:```foxproLOCAL num1, num2, result```接下来,我们需要获取用户输入的数字。
在按钮事件代码中,添加以下代码:```foxpronum1 = VAL(Thisform.txtNum1.Value)num2 = VAL(Thisform.txtNum2.Value)```然后,我们可以执行所需的计算操作。
例如,如果我们想要添加两个数字,我们可以使用以下代码:```foxproresult = num1 + num2```最后,我们需要将结果显示在界面上。
在按钮事件代码中,添加以下代码:```foxproThisform.lblResult.Caption = STR(result)```步骤6:运行和测试完成上述步骤后,您可以保存并运行计算器。
在VFP的工具栏中,点击“运行”按钮来启动应用程序。
测试计算器,确保它可以正确执行计算操作并显示结果。
结论通过使用Visual FoxPro,我们可以轻松创建一个简易计算器。
这个计算器可以执行基本的加减乘除等操作,同时提供了一个直观的用户界面。
您可以根据需要进行自定义,添加更多功能和复杂的计算操作。
VB制作简单计算器的过程
![VB制作简单计算器的过程](https://img.taocdn.com/s3/m/ef13483b67ec102de2bd8958.png)
三、还有需要加强改进的地方?
If Left(Text1.Textd1(Index).Caption
Else
Text1.Text = Text1.Text & Command1(Index).Caption
例如:
依次按下“100”、“÷”、“5”,然后再按下“C”,再依次按下“2”、“=”,显示为2。这说明将前面的100÷5都清降掉了.
而依次按下“100”、“÷”、“5”,再按下“CE”,再依次按下“2”、“=”,显示为50,即清除了5,执行了100÷2的操作。
10、前导零不显示
例如:"00123","00.123"
Abs(shu1):取绝对值
len(shu1):测量字符串shu1的长度
left(shu1,n):返回字符shu1中左边n个字符
right(shu1,n):返回字符shu1中右边n个字符
Instr(n,shu1,”.”):找出小数点在shu1中第n次出现的位置
End If
If InStr(1, Text1.Text, ".") = 0 Then
Text1.Text = Text1.Text & "."
End If
If InStr(1, Text1.Text, ".") = 1 Then
Text1.Text = "0" & Text1.Text
9、纠错
说明:C与CE的区别
C键为清除键(CLEAR的缩写) 功能清除所有操作从头再来
CE键为纠错键(CLEAR ERROR的缩写)功能当前操作数归零可以重新输入操作。
最新如何制作一个VB计算器
![最新如何制作一个VB计算器](https://img.taocdn.com/s3/m/7cfcc2ad4431b90d6d85c7a6.png)
如何制作一个V B计算器如何制作一个VB计算器功能说明:支持加、减、乘、除、取反、阶乘、x的y次方、括号按键重新分配、提高了工作效率窗口过渡动画实时输入纠错,计算纠错其它经典实用的小功能期待发现与添加界面预览:前期准备:有Microsoft Visual Basic 开发平台,懂基本的VB语法(有明白时查资料就行了)计算顺序为()、!、^、*/、取反、加减算法为:①首先扫描出()内需要优先计算的部分,将这部分用来计算②依照计算顺序进行计算③用计算结果替换原()联同()内表达式④循环①~③直至只剩下一个数据⑤结果的处理主要内容:怎样扫描出各个计算符号和需要运算的数据,怎样纠错,后面会详细介绍开始动手之窗体设计:(1)新建工程——标准exeForm属性:BordStyle=1,Caption=计算器,FillStyle=1,Height=4455,Width=7995,(近似的黄金分割)Picture自己找一张图片(2)菜单工程——部件——控件——勾选Microsoft Forms 2.0 Object Library——确定(3)在新出现的控件中添加一个Textbox名称=tb,Backstyle=0,Boardstyle=1,Height=3615,Left=0,Top=0,Width=7995,Font适当(4)一个Image名称=img,Height=3615,Left=0,Top=0,Width=7995(尺寸位置与Textbox相同),visibal=false,stretch=true,Picture自己找一张图片(5)在新出现的控件中添加一个Label将长度调整为与窗体同长,高度刚好可以填补视界中两张图片的差,放过去填补这个差,这样应该懂了用意了吧,Backstyle=0,Boardstyle=0,Caption随意,Font适当用鼠标点选这个标签,ctrl+c,ctrl+v创建数组,放到适当位置,重复总共放置5个,包含原来的那个。
VB编写简单计算器程序
![VB编写简单计算器程序](https://img.taocdn.com/s3/m/458f05ef6294dd88d0d26b65.png)
Option ExplicitDim LastInput As String * 3 '记录上次按下的按键Dim Num1 As Double '第一个操作数Dim Num2 As Double '第二个操作数Dim OptType As Integer '按下哪一个操作符Dim Result As Double '表示运算结果Dim shuzhi As Integer '表示当前采用的shuzhiDim FirstNum As Boolean '是否是第一个操作数Sub keyp(keynum As Integer)Dim CHAR As String * 1CHAR = Chr(keynum)If CHAR = "+" Or keynum = 43 Then Command5(0).Value = TrueIf CHAR = "-" Or keynum = 45 Then Command5(1).Value = TrueIf CHAR = "*" Or keynum = 42 Then Command5(2).Value = TrueIf CHAR = "/" Or keynum = 47 Then Command5(3).Value = TrueIf shuzhi = 2 And CHAR >= "2" And CHAR <= "9" Thenkeynum = 0Exit SubEnd IfIf keynum >= 48 And keynum <= 57 Then Command1(keynum - 48).Value = True If keynum = 46 Then Command2.Value = TrueIf UCase(CHAR) = "C" Then Command3.Value = TrueIf keynum = 27 Then Command4.Value = TrueIf keynum = 61 Then Command6.Value = Truekeynum = 0End SubFunction angle(ByVal j1 As Integer) As Singleangle = j1If Option1.Value Then angle = j1 * 3.14 / 180End FunctionFunction ArcSin(ByVal Num As Single) As SingleIf Num = 1 ThenArcSin = 3.1415926 / 2ElseIf Num = -1 ThenArcSin = 3.1415926 * 3 / 2ElseArcSin = Atn(Num / Sqr(-Num * Num + 1))End IfIf Option1.Value Then ArcSin = ArcSin * 180 / 3.1415926End FunctionFunction ArcCos(ByVal Num As Single) As SingleIf Num = 1 ThenArcCos = 0ElseIf Num = -1 ThenArcCos = 3.1415926ElseArcCos = Atn(-Num / Sqr(-Num * Num + 1)) + 2 * Atn(1)End IfIf Option1.Value Then ArcCos = ArcCos * 180 / 3.1415926 End FunctionFunction jiecheng(ByVal n As Integer) As SingleDim COUNT As Integerjiecheng = 1For COUNT = 1 To njiecheng = jiecheng * COUNTNextEnd FunctionFunction n10to2(ByVal Number As Single) As SingleDim IntN As Long 'Number的整数部分Dim FracN As Single 'Number的小数部分Dim ModN As Integer '整数部分换算时,记录余数Dim RltN As String '换算结果Dim i As IntegerIf InStr(Number, "e") > 0 Or InStr(Number, "E") > 0 Then MsgBox "不能转换以科学记数法表示的数据!"Exit FunctionEnd IfModN = 0'Number = Val(Text1.Text)IntN = Int(Number)FracN = Number - IntN'以下代码用于将十进制的整数部分换算为二进制Do While IntN > 0ModN = IntN Mod 2IntN = IntN \ 2RltN = ModN & RltNLoopRltN = RltN & "."i = 1'以下代码用于将十进制的小数部分换算为二进制Do While i <= 7 Or FracN <> 0FracN = FracN * 2If FracN >= 1 ThenFracN = FracN - 1RltN = RltN & "1"ElseRltN = RltN & "0"End Ifi = i + 1Loopn10to2 = RltN'Option3.Value = TrueEnd FunctionFunction n2to10(ByVal Number As Double) As SingleDim i As Integer, j As IntegerDim IntN As Long, FracN As SingleDim RltN As SingleDim POS As Integer '记录小数点位置If InStr(Number, "e") > 0 Or InStr(Number, "E") > 0 ThenMsgBox "不能转换以科学记数法表示的数据!"Exit FunctionEnd IfOn Error GoTo ErrIntN = Int(Number)FracN = Number - IntNDo While IntN > 0 '换算整数部分RltN = RltN + (IntN Mod 10) * 2 ^ jj = j + 1IntN = IntN \ 10LoopPOS = InStr(1, Str(FracN), ".")j = -1For i = POS + 1 To Len(Str(FracN)) '换算小数部分RltN = RltN + 2 ^ j * Val(Mid(Str(FracN), i, 1))j = j - 1Next in2to10 = RltN'Option4.Value = TrueExit FunctionErr:Text1.Text = "数据太大,溢出!"End FunctionPrivate Sub Command1_Click(Index As Integer)'当按下数字键(0-9)时,向文本框尾部追加数据'并通过变量LastInput记录上次按键为数字键If Len(Text1.Text) > 16 Then Exit SubIf Text1.Text = "0" Or LastInput = "Eqv" Then Text1.Text = ""Text1.Text = Text1.Text & Index '追加数据LastInput = "Num"Command1(0).SetFocusEnd SubPrivate Sub Command1_KeyPress(Index As Integer, KeyAscii As Integer) Call keyp(KeyAscii)End SubPrivate Sub Command2_Click()'按下小数点按钮的处理过程'如果数据位数超出范围,或数据中已包含小数点,退出本过程If Len(Text1.Text) > 16 Or InStr(1, Text1.Text, ".") > 0 _And LastInput <> "Eqv" Then Exit Sub'如果以"."开始输入新数据,在"."前加"0";'如果在数据输入过程中按下".",直接将"."追加在数据尾部If LastInput = "Opt" Or LastInput = "Eqv" Or LastInput = "Neg" Then Text1.Text = Text1.Text + "0."ElseText1.Text = Text1.Text + "."End IfLastInput = "Num"Command1(0).SetFocusEnd SubPrivate Sub Command3_Click()'按下"C"(取消) 按钮的Click 事件过程'重新设置并初始化变量。
VB写简易计算器附图
![VB写简易计算器附图](https://img.taocdn.com/s3/m/085d68120722192e4536f685.png)
用V B6.0编写简易计算器效果图:废话不多说,直接上步骤一、创建控件组1、创建控件组的方法??首先创建一个命令按钮,调整其大小(觉得合适就行),名称为Command1,Caption属性为数字 0 ;然后进行“复制”和“粘贴”,当选择“粘贴”时,出现对话框提示已有一个同名控件,询问是否创建控件组,选择“是”后,即创建了一个名为“Command”的控件组。
这时,第一个按钮的Index属性值默认为“0”,第二个的Index属性值自动设为“1”,并且大小与第一个按钮相同,只需修改其 Caption 属性为数字“1”并将其拖至合适位置即可。
此后继续使用“粘贴”的方法建立其他控件组中其余按钮,共20个按钮,每建立一个,就将它拖到合适处,并修改相应的Caption属性值。
二、编写代码Dim s1 As Single, s2 As Single, ysf As String'定义两个单精度数变量用与存放参与运算的数,一个字符型存放运算符Private Sub Command1_Click(Index As Integer)Text1.Text = Text1.Text & Command1(Index).Caption'将command1的单击事件与文本框显示的内容连接End SubPrivate Sub Command2_Click()Text1.Text = Text1.Text + "."If (InStr(Text1.Text, ".") = 1) Then'第一位不能为小数Text1.Text = ""End IfIf InStr(Text1.Text, ".") < Len(Text1.Text) Then '防止出现两个小数点Text1.Text = Left(Text1.Text, Len(Text1.Text) - 1)End IfEnd SubPrivate Sub Command3_Click()s2 = Val(Text1.Text) '开始加减乘除运算Select Case ysfCase "+"Text1.Text = s1 + s2Case "-"Text1.Text = s1 - s2Case "*"Text1.Text = s1 * s2Case "/"If s2 = 0 ThenMsgBox "分母不能为零!"Text1.Text = ""ElseText1.Text = s1 / s2End IfEnd SelectText1 = IIf(Left(Text1.Text, 1) = ".", 0 & Text1.Text, Text1.Text) '这个很关键,如果没有这个的话,得出小于1的小数前面没有0End SubPrivate Sub Command4_Click()If Text1.Text = "" Then '文本为空就结束Exit SubEnd IfText1.Text = Left(Text1.Text, Len(Text1.Text) - 1) '文本退一格End SubPrivate Sub Command5_Click()Text1.Text = "" '清除当前框内文本End SubPrivate Sub Command6_Click(Index As Integer)s1 = Val(Text1.Text) '将s1隐藏起来ysf = Command6(Index).CaptionText1.Text = ""End SubPrivate Sub Command7_Click()If Left(Text1.Text, 1) <> "-" Then '判断作为负数Text1.Text = "-" & Text1.TextElseText1.Text = Right(Text1.Text, Len(Text1.Text) - 1)End IfEnd SubPrivate Sub Command8_Click()Text1.Text = Text1.Text * Text1.Text '平方End Sub各位朋友,可以将红色代码复制到相应位置,不清楚的可以全选复制,但是一定要按照我的步骤和给的名称来哦!还可以再添加按钮Private Sub Command9_Click() '这是退出代码EndEnd Sub三、测试,成功的话给个好评哦!谢谢各位下载与支持!这个可以编写作为作业哦!。
用VB编写一个简单计算器
![用VB编写一个简单计算器](https://img.taocdn.com/s3/m/8c3e21135727a5e9856a619b.png)
用VB编写一个简单计算器一、功能:实现简单的加减乘除功能,C归零,CE取消输入,%计算并显示第一个操作数的百分比。
二、控件:1个label,20个commandbutton。
三、计算器运行界面:四、详细代码:Option ExplicitDim Op1, Op2 '前面输入的操作数Dim DecimalFlag As Integer '小数点仍然存在吗?Dim NumOps As Integer '操作数个数Dim LastInput '指示上一次按键事件的类型Dim OpFlag '指示未完成的操作Dim TempReadout' C (取消) 按钮的Click 事件过程' 重新设置显示并初始化变量Private Sub Cancel_Click()Readout = Format(0, "0.")Op1 = 0Op2 = 0Form_LoadEnd Sub' CE (取消输入) 按钮的Click 事件过程Private Sub CancelEntry_Click()Readout = Format(0, "0.")DecimalFlag = FalseLastInput = "CE"End Sub' 小数点(.) 按钮的Click 事件过程' 如果上一次按键为运算符,初始化readout 为"0.";' 否则显示时追加一个小数点Private Sub Decimal_Click()If LastInput = "NEG" ThenReadout = Format(0, "-0.")ElseIf LastInput <> "NUMS" ThenReadout = Format(0, "0.")End IfDecimalFlag = TrueLastInput = "NUMS"End Sub' 窗体的初始化过程' 设置所有变量为其初始值Private Sub Form_Load()DecimalFlag = FalseNumOps = 0LastInput = "NONE"OpFlag = " "Readout = Format(0, "0.")'Decimal.Caption = Format(0, ".")End Sub' 数字键(0-9) 的Click 事件过程' 向显示中的数追加新数Private Sub Number_Click(Index As Integer)If LastInput <> "NUMS" ThenReadout = Format(0, ".")DecimalFlag = FalseEnd IfIf DecimalFlag ThenReadout = Readout + Number(Index).CaptionElseReadout = Left(Readout, InStr(Readout, Format(0, ".")) - 1) + Number(Index).Caption + Format(0, ".")End IfIf LastInput = "NEG" Then Readout = "-" & ReadoutLastInput = "NUMS"End Sub' 运算符(+, -, x, /, =) 的Click 事件过程' 如果接下来的按键是数字键,增加NumOps。
用VB制作计算器
![用VB制作计算器](https://img.taocdn.com/s3/m/b1ef1342a7c30c22590102020740be1e640ecc67.png)
用VB制作计算器在VB编程语言中,可以使用Windows Forms应用程序来制作一个简单的计算器。
Windows Forms应用程序是VB的一种可视化编程工具,可以为用户提供一个图形用户界面。
首先,我们需要创建一个新的Windows Forms应用程序项目,并打开默认生成的Form1窗体。
接下来,我们可以使用Windows Forms控件来创建一个计算器的用户界面。
在Form1窗体上,我们可以添加一个TextBox控件用于显示计算结果,并设置其属性为只读。
```vbPrivate ReadOnly resultTextBox As TextBox = New TextBox```然后,我们可以添加一些Button控件来表示计算器的数字和操作符。
我们可以使用按钮的Click事件来处理用户的点击操作。
```vbPrivate ReadOnly buttons As List(Of Button) = New List(Of Button)```接下来,我们需要实现按钮的Click事件处理程序来执行相应的计算逻辑。
我们可以使用Eval函数来计算表达式的值,并将结果显示在TextBox中。
Private Sub Button_Click(sender As Object, e As EventArgs) Dim button As Button = TryCast(sender, Button)If button IsNot Nothing ThenDim buttonText As String = button.TextIf buttonText = "=" Then'计算表达式的值Dim expression As String = resultTextBox.TextDim value As Double = Eval(expression)resultTextBox.Text = value.ToStringElseIf buttonText = "C" Then'清空文本框resultTextBox.Text = ""Else'添加数字或操作符resultTextBox.Text += buttonTextEnd IfEnd IfEnd Sub最后,我们需要在窗体的构造函数或Load事件处理程序中将按钮和TextBox添加到窗体上。
使用VB设计一个简易计算器
![使用VB设计一个简易计算器](https://img.taocdn.com/s3/m/5f399150f08583d049649b6648d7c1c708a10b1e.png)
使用VB设计一个简易计算器下面是使用VB设计一个简易计算器的代码示例:```vbPublic Class FrmCalculatorDim operand1 As DoubleDim operand2 As DoubleDim operatorFlag As StringPrivate Sub BtnNumber_Click(sender As Object, e As EventArgs) Handles Btn0.Click, Btn1.Click, Btn2.Click, Btn3.Click, Btn4.Click, Btn5.Click, Btn6.Click, Btn7.Click, Btn8.Click, Btn9.ClickDim button As Button = CType(sender, Button)TxtResult.Text += button.TextEnd SubPrivate Sub BtnOperator_Click(sender As Object, e As EventArgs) Handles BtnPlus.Click, BtnMinus.Click,BtnMultiply.Click, BtnDivide.ClickDim button As Button = CType(sender, Button)operatorFlag = button.Textoperand1 = Val(TxtResult.Text)TxtResult.Text = ""End SubPrivate Sub BtnEquals_Click(sender As Object, e As EventArgs) Handles BtnEquals.Clickoperand2 = Val(TxtResult.Text)Select Case operatorFlagCase "+"TxtResult.Text = (operand1 + operand2).ToStringCase "-"TxtResult.Text = (operand1 - operand2).ToStringCase "*"TxtResult.Text = (operand1 * operand2).ToStringCase "/"If operand2 <> 0 ThenTxtResult.Text = (operand1 / operand2).ToStringElseTxtResult.Text = "Cannot divide by zero"End IfEnd SelectEnd SubPrivate Sub BtnClear_Click(sender As Object, e As EventArgs) Handles BtnClear.ClickTxtResult.Text = ""End SubEnd Class```在上述代码中,Form上放置了一些按钮和一个文本框用于显示计算结果。
使用VB制作计算器程序
![使用VB制作计算器程序](https://img.taocdn.com/s3/m/116f461e302b3169a45177232f60ddccda38e6aa.png)
使用VB制作计算器程序计算器程序是一种用于进行数学计算的工具。
最常见的计算器是电子计算器,它可以实现简单的加减乘除等基本计算。
而现在,我们可以使用VB(即Visual Basic)编程语言制作一个计算器程序,使其在计算能力上有所提升。
首先,我们需要创建一个VB Windows Forms应用程序。
在创建项目时,我们可以选择桌面应用程序(Windows Forms)模板。
接下来,我们需要设计计算器的用户界面。
可以使用按钮、文本框等控件来实现基本的数字输入和计算。
假设我们的计算器有一个文本框用于显示输入和结果,并且有数字按钮和运算符按钮来输入表达式,并且还有一个等号按钮用于计算结果。
我们可以使用VB代码来实现各种按钮的功能。
以下是一个简单的计算器程序示例:```vbPublic Class Form1Dim num1 As Double ' 第一个操作数Dim num2 As Double ' 第二个操作数Dim result As Double ' 结果Dim operator As String ' 运算符'数字按钮的点击事件处理函数Private Sub NumberButton_Click(sender As Object, e As EventArgs) Handles Button1.Click, Button2.Click, Button3.Click, Button4.Click, Button5.Click, Button6.Click, Button7.Click, Button8.Click, Button9.Click, Button0.ClickDim number As Button = CType(sender, Button)TextBox1.Text += number.TextEnd Sub'运算符按钮的点击事件处理函数Private Sub OperatorButton_Click(sender As Object, e As EventArgs) Handles PlusButton.Click, MinusButton.Click, MultiplyButton.Click, DivideButton.ClickDim op As Button = CType(sender, Button)num1 = CDbl(TextBox1.Text)TextBox1.Clear[operator] = op.TextEnd Sub'等号按钮的点击事件处理函数Private Sub EqualsButton_Click(sender As Object, e As EventArgs) Handles EqualsButton.Clicknum2 = CDbl(TextBox1.Text)Select Case [operator]Case "+"result = num1 + num2Case "-"result = num1 - num2Case "*"result = num1 * num2Case "/"result = num1 / num2End SelectTextBox1.Text = result.ToStringEnd Sub'清除按钮的点击事件处理函数Private Sub ClearButton_Click(sender As Object, e As EventArgs) Handles ClearButton.ClickTextBox1.ClearEnd SubEnd Class```以上代码实现了简单的加减乘除功能,并将结果显示在文本框中。
(完整word)图文教程—VB计算器设计
![(完整word)图文教程—VB计算器设计](https://img.taocdn.com/s3/m/541ed4ef168884868762d69b.png)
VB计算器设计—图文教程界面设计——代码设计——测试运行——保存文件界面设计:一、启动VB,新建一个“标准EX E”工程,将“Form1”的“Caption属性”改为“我的计算器”,“Height属性”改为6100,“Width属性”改为7100。
二、添加一个“Frame”,“Caption属性”改为“数字区”,Height为3615,Width为2655。
添加一个“Frame”,“Caption属性”改为“功能区”,Height为1815,Width为3135。
三、添加一个“TextBox”,“名称”改为t4,“Text属性”改为空白,Height为6255,Width为615。
用同样的方法,添加一个“TextBox”,“名称”改为t1,“Text属性”改为空白,Height为975,Width为495。
添加一个“TextBox”,“名称”改为t2,“Text属性”改为空白,Height为495,Width为495。
添加一个“TextBox”,“名称”改为t3,“Text属性”改为空白,Height为975,Width为495。
摆放位置如图所示:t4t1 t2 t3四、添加一个“CommandButton”,“名称”改为cmd0,“Caption属性”改为0,Height和Width都为495。
摆放位置如图所示:按照同样的方法,在数字区添加其他的CommandButton,并根据下表更改CommandButton的名称、Caption属性,Height和Width。
类型名称Caption属性Height高度Width宽度CommandButton Cmd0 0 495 495CommandButton Cmd小数点. 495 495CommandButton 正负+/- 495 495CommandButton Cmd1 1 495 495CommandButton Cmd2 2 495 495CommandButton Cmd3 3 495 495CommandButton Cmd4 4 495 495CommandButton Cmd5 5 495 495CommandButton Cmd6 6 495 495CommandButton Cmd7 7 495 495CommandButton Cmd8 8 495 495CommandButton Cmd9 9 495 495注意:可以用复制-粘贴的方法,但是在询问“是否创建一个控件数组?”时,请选择“否”!最后,数字区的效果如下图所示:五、添加一个“CommandButton”,“名称”改为加,“Caption属性”改为+,Height和Width都为495。
用VB6.0编写一个小计算器
![用VB6.0编写一个小计算器](https://img.taocdn.com/s3/m/363d3447b42acfc789eb172ded630b1c58ee9b13.png)
04
测试和调试
功能测试
测试所有基本功能
加、减、乘、除、平方、平方根等。
测试运算符优先级
确保遵循数学规则,如先乘除后加减。
测试数字范围
包括整数、小数和科学记数法表示的数字。
错误处理
输入验证
确保输入是数字,防止非法字符输入。
异常处理
在VB6.0中,可以使用"/"运算符进行除法 运算。为了实现除法运算,可以在按钮的 点击事件中编写相应的代码,例如: `result = num1 / num2`,其中`num1`和 `num2`是要相除的两个数,`result`是存储 结果的变量。需要注意的是,如果除数为0 会导致程序出错,因此需要进行除数为0的 判断。
谢谢观看
用VB6.0编写一个小计算器
目录
• 引言 • 设计计算器界面 • 实现计算器功能 • 测试和调试 • 总结和展望
01
引言
目的和背景
提高编程技能和实践能力
练习开发一个简单的计算 器应用程序
掌握VB6.0编程语言的基本 语法和控件
01
03 02
计算器概述
一个基本的计算器应 用程序应具备加、减、 乘、除运算功能
优化用户界面
虽然现在的用户界面已经比较友好,但我们可以 进一步优化它,使其更加美观和易用。例如,可 以调整按钮大小、颜色和布局,使其更加符合用 户审美和使用习惯。
扩展平台兼容性
为了使更多人能够使用这个小计算器,我们可以 考虑将其移植到其他平台,如手机或平板电脑。 这需要我们使用跨平台的开发框架和技术来实现 。
平方和平方根运算
总结词
实现平方和平方根运算的基本功能
如何制作一个VB计算器
![如何制作一个VB计算器](https://img.taocdn.com/s3/m/ef3b836225c52cc58bd6be54.png)
(3)在新出现的控件中添加一个Textbox
名称=tb,Backstyle=0,Boardstyle=1,Height=3615,Left=0,Top=0,Width=7995,Font适当
KeyCode = vbKeyMultiply
Case vbKeyB, vbKeyN, vbKeyM, 188, 191
KeyCode = vbKeyDivide
Case vbKeyP, 219, 220, 221
KeyCode = 41
SendKeys "+6"
Case 192, 9, vbKeyQ
If lb3.Top > tb.Height Then
lb3.Top = lb3.Top - 150
Else
lb3.Top = tb.Height
If c < 100 Then
c = c + 1
Else
c = 0
Timer5.Enabled = False
lb3.Visible = False
End If
Case vbKeyW, vbKeyE, vbKeyR, vbKeyT
KeyCode = vbKeyAdd
Case vbKeyZ, vbKeyX, vbKeyC, vbKeyV, 189
KeyCode = vbKeySubtract
Case vbKeyY, vbKeyU, vbKeyI, vbKeyO
Label1(1).Top = 3600
Label1(2).Top = 3600
Label1(3).Top = 3600
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
零基础VB制作简易计算器
Feb. 16, 2014 by 王斌(华宁一中)
作为一位初学者来说,VB这个东西似乎有些难(谁不难啊),但是仔细琢磨之后,又觉得和我们的生活密切相关。
我们可以使用它来制作一个简易的计算器哦!
我自己大概只花了5~6天的时间来粗略地学习来一下简易计算器的制作,特在此和各位分享一下我的心得。
我也是第一次做这个东西,感觉编程序是那些高材生或技术人员才可以干的事情。
其实,你也可以当一次这样的技术人员(是不是感觉自己的档次提高了不少?哈哈!)。
特此申明:本人能力有限,所做的计算器只能进行如下运算
加法:可连续相加9次
减法:可连续相减9次
乘法·除法各可运算1次
我们先从基础的东西说起
一、启动:
1.“开始”按钮----“程序”----“Microsoft Visual Basic6.0中文版”
2.选“新建”选项卡
新建:建立新的工程
现存:选择和打开现有的工程
最新:最近使用过的工程
3.单击“标准EXE”项,再单击“打开”按钮
二、退出:
在菜单文件(F)项中选“退出”或单击“关闭”按钮
建立一个VB应用程序的一般步骤:
1. 设计窗体,建立用户界面的对象;
2. 设置各对象的属性;
3. 为必要的对象进行事件过程的编程;
4. 程序运行与调试;
5. 保存文件和编译。
好,先来认识一下我们即将要用到的工具吧,下面的这个叫
工具箱
我们开始来制作它:
一.显示屏和按键
1.使用工具箱中右边的第二个按钮(文本框)在图1.2上拖出一个框,为Text1
2.然后,再使用工具箱中右边的第三个按钮(命令按钮)分别拖出你喜欢的形状(我认为
还是正方形.长方形最好)
电脑就会自动给它们编号mand2等。
此时,你使用鼠标左键单击它们中的任意一个,如:Command9.在右边的框中便会出现:(名称)Command9
你找到Caption ,将Command9改写成你想要的数字
你还可以设置一个清除键:clear。
加号减号乘号除号的制作方法也和其他按键一样的。
二.编写程序
1. 用鼠标左键双击上面这个图中的打有一些黑色小点的区域,就会来到下面
电脑是不会自己进行运算的,所以你要先自己把你要用到的东西告诉它所以就要告诉它
格式:Dim 变量名[AS 类型]
我们则需要申明
Dim shu1 As Single
Dim shu2 As Single
Dim shu3 As Single
Dim shu4 As Single
Dim shu5 As Single
Dim shu6 As Single
Dim shu7 As Single
Dim shu8 As Single
Dim shu9 As Single
另外,我们还要申明加法或减法进行了几次,所以又要申明
Dim yier As Single (yier是代表输入第几个数字)
还有,要对符号进行申明
格式:DIM 变量名AS String
Dim fuhao As String
2.我们来对数字进行编排,我们来看1
当我们输入第一个数字时,它就是1
当我们输入第二个数字时,它就是11
当我们输入第三个数字时,它就是111
此处,我们要用到一个结构结构为:If 条件Then
语句块
End If
Private Sub Command1_Click()
If yier = 1 Then
shu1 = shu1 * 10 + 1
Text1.Text = Str(shu1)
ElseIf yier = 2 Then
shu2 = shu2 * 10 + 1
Text1.Text = Str(shu2)
ElseIf yier = 3 Then
shu3 = shu3 * 10 + 1
Text1.Text = Str(shu3)
ElseIf yier = 4 Then
shu4 = shu4 * 10 + 1
Text1.Text = Str(shu4)
ElseIf yier = 5 Then
shu5 = shu5 * 10 + 1
Text1.Text = Str(shu5)
ElseIf yier = 6 Then
shu6 = shu6 * 10 + 1
Text1.Text = Str(shu6)
ElseIf yier = 7 Then
shu7 = shu7 * 10 + 1
Text1.Text = Str(shu7)
ElseIf yier = 8 Then
shu8 = shu8 * 10 + 1
Text1.Text = Str(shu8)
ElseIf yier = 9 Then
shu9 = shu9 * 10 + 1
Text1.Text = Str(shu9)
End If
End Sub
注意:每次输入的数字要让他在显示屏中显示出来
即:Text1.Text = Str(shu1)
其它的几个数字的输入只要把上面的“+1”改成“+2”,“+3”,“+4”,“+5”,“+6”,“+7”,“+8”,“+9”即可
3.clear键:就是所有的数字为0,Text1.Text为0
Private Sub Form_Load()
Text1.Text = ""
shu1 = 0
shu2 = 0
shu3 = 0
shu4 = 0
shu5 = 0
shu6 = 0
shu7 = 0
shu8 = 0
shu9 = 0
yier = 1
End Sub
加号:每加一次,下一次相加是在这一次的基础上再加一个数字所以:每加一次yier就加1
Private Sub Command3_Click()
fuhao = "+"
If yier = 1 Then
yier = 2
ElseIf yier = 2 Then
yier = 3
ElseIf yier = 3 Then
yier = 4
ElseIf yier = 4 Then
yier = 5
ElseIf yier = 5 Then
yier = 6
ElseIf yier = 6 Then
yier = 7
ElseIf yier = 7 Then
yier = 8
ElseIf yier = 8 Then
yier = 9
End If
End Sub
减号也是如此,只需把fuhao = “+”改成fuhao = “-“
4.乘法和除法
乘法: Private Sub Command9_Click()
fuhao = "*"
If yier = 1 Then
yier = 2
End If
End Sub
除法:Private Sub Command9_Click()
fuhao = "/"
If yier = 1 Then
yier = 2
End If
End Sub
5. 等号
Private Sub Command5_Click()
If fuhao = "+" Then
Text1.Text = Str(shu1 + shu2 + shu3 + shu4 + shu5 + shu6 + shu7 + shu8 + shu9) ElseIf fuhao = "-" Then
Text1.Text = Str(shu1 - shu2 - shu3 - shu4 - shu5 - shu6 - shu7 - shu8 - shu9) ElseIf fuhao = "*" Then
Text1.Text = Str(shu1 * shu2)
ElseIf fuhao = "/" Then
Text1.Text = Str(shu1 / shu2)
End If
End Sub
最后,进行一下计算;检查是否出错
最后,一个简易的计算器就制作成功了(是不是心动了,快动手做一做吧)。