永发信息网

VF编写简易计算器

答案:2  悬赏:0  手机版
解决时间 2021-03-27 23:32
VF编写简易计算器
最佳答案
设计步骤如下(借鉴):
(1)建立应用程序用户界面。
选择“新建”表单,进入表单设计器,增加一个文本框控件Textl、一个标签控件Label1和一个命令按钮组CommandGroup1,并将命令按钮组的ButtonCount属性改为16。
(2)设置对象属性如下表所示:

CommandGroup1中各按钮的属性设置

对象 属性 属性值 说明
Command1~Command10 Caption 依次改为:1、2、3、4、5、6、7、8、9、0
FontBold .T.

Command11~Command10 Caption 依次改为:.、=、+、-、*、/
FontBold .T.

(3)编写程序代码。
①编写CommandGroup1的Click事件代码:
IF THISFORM.Tag=.T.
THISFORM.Text1.Value=ALLT(RIGHt(STR(THIS.Value),1))
THISFORM.Tag=〃 〃
ELSE
a=THISFORM.Text1.Value
THISFORM.Text1.Value=a+ALLT(RIGHt(STR(THIS.Value),1))
ENDIF
②编写“.”按钮Command11的Click事件代码:
a=THISFORM.Text1.Value
THISFORM.Text1.Value=a+〃.〃
③编写“=”按钮Command12的Click事件代码:
a=THISFORM.Text1.Value
THISFORM.Text1.Value=ALLT(STR(&a))
THISFORM.Tag=.T.
④编写“+”按钮Command13的Click事件代码:
a=THISFORM.Text1.Value
THISFORM.Text1.Value=a+〃+〃
THISFORM.Tag=〃 〃
⑤编写“-”按钮Command14的Click事件代码:
a=THISFORM.Text1.Value
THISFORM.Text1.Value=a+〃-〃
THISFORM.Tag=〃 〃
⑥编写“*”按钮Command15的Click事件代码:
a=THISFORM.Text1.Value
THISFORM.Text1.Value=a+〃*〃
THISFORM.Tag=〃 〃
⑦编写“/”按钮Command16的Click事件代码:
a=THISFORM.Text1.Value
THISFORM.Text1.Value=a+〃+〃
THISFORM.Tag=〃 〃
全部回答
用VB制作简易计算器程序
作者:佚名 来源:桂东台站 发布时间:2004-02-17 01:43:53 点击数:2564
大家想必都用过Windows自带的计算器程序,现在我们就模仿这个程序自己创造一个。具体步骤如下:
步骤1:
创建一个新的工程。
步骤2:
在窗体上添加一个文本框控件和十九个命令按钮控件,并适当调整的大小及位置。
步骤3:
将文本框控件的“Alignment”属性设置为“1-Right Justify”,将其字号设为“三号”,将“Text”属性设置为空(“”)。
步骤4:
依次将命令按钮控件的“Caption”属性设置为“1”、“2”、“3”、“4”、“5”、“6”、“7”、“8”、“9”、“0”、“.”、“+”、“-”、“*”、“/”、“Mod”、“Sqrt”、“C”。
步骤5:
将窗体的“Caption”属性设置为“计算器”。至此,窗体设计已经完成了。设计好的窗体如图1所示。
图1 计算器程序窗体
步骤6:
为程序编写如下代码:
Option Explicit
Dim sz As Integer '用来记录进行何种运算
Dim x As Single, y As Single '用来记录进行运算的两个数
'从第一个命令按钮到第十个是用来输入0至9十个数字的
Private Sub Command1_Click()
Text1.Text = Text1.Text & "1"
End Sub
Private Sub Command2_Click()
Text1.Text = Text1.Text & "2"
End Sub
Private Sub Command3_Click()
Text1.Text = Text1.Text & "3"
End Sub
Private Sub Command4_Click()
Text1.Text = Text1.Text & "4"
End Sub
Private Sub Command5_Click()
Text1.Text = Text1.Text & "5"
End Sub
Private Sub Command6_Click()
Text1.Text = Text1.Text & "6"
End Sub
Private Sub Command7_Click()
Text1.Text = Text1.Text & "7"
End Sub
Private Sub Command8_Click()
Text1.Text = Text1.Text & "8"
End Sub
Private Sub Command9_Click()
Text1.Text = Text1.Text & "9"
End Sub
Private Sub Command10_Click()
Text1.Text = Text1.Text & "0"
End Sub
Private Sub Command11_Click()
Text1.Text = Text1.Text & "." '输入小数点
End Sub
Private Sub Command12_Click()
x = CSng(Text1.Text) '将输入的数转换成单精度型的
sz = 1 '设置即将进行的是加法运算
Text1.Text = "" '将文本框清空,以便输入第二个数
End Sub
Private Sub Command13_Click()
x = CSng(Text1.Text)
sz = 2
Text1.Text = ""
End Sub
Private Sub Command14_Click()
x = CSng(Text1.Text)
sz = 3
Text1.Text = ""
End Sub
Private Sub Command15_Click()
x = CSng(Text1.Text)
sz = 4
Text1.Text = ""
End Sub
Private Sub Command16_Click()
x = CSng(Text1.Text)
sz = 5
Text1.Text = ""
End Sub
Private Sub Command17_Click()
x = CSng(Text1.Text)
Text1.Text = Sqr(x) '因为求平方根只需一个运算对象,因此在此就给出结果
End Sub
Private Sub Command18_Click()
On Error GoTo ex '设置如果遇到错误就退出此过程
y = CSng(Text1.Text)
Select Case sz '根据sz的值来决定进行何种运算
Case 1
Text1.Text = x + y '进行加法运算并将结果显示在文本框中
Case 2
Text1.Text = x - y
Case 3
Text1.Text = x * y
Case 4
Text1.Text = x / y
Case 5
Text1.Text = x Mod y
End Select
ex:
End Sub
Private Sub Command19_Click()
Text1.Text = "" '将文本框清空,以便输入新的数字
End Sub
步骤7:
至此,程序已经全部设计完毕,保存工程及窗体。
使用这个程序,可以进行整数或小数的四则运算及取余数、求平方根的运算。
下面简单解释一下上述代码的含义:
程序开始时,首先定义了三个模块级的变量,分别用来记录用户所选的是何种操作及参加运算的两个数。前面十一个命令按钮是用来输入十个数及小数点的,单击这些按钮后,与其对应的数字或小数点就会出现在文本框中。接下来的五个命令按钮的单击事件过程中,首先将第一个运算对象转换成单精度型的(因为文本框中的内容是字符型的),再记录一下运算方式并清空文本框中的内容以便输入下一个数。因为求平方根只需一个运算对象,因此在第十七命令按钮中直接求出结果并显示出来。第十八命令按钮是在输入两个数后,用来求得结果的。在该按钮的单击事件过程中,先将第二个运算对象转换成单精度型,然后再根据前面记录的运算方式序号进行相应的运算,求出结果后显示在文本框中。最后一个命令按钮是用来在一次运算结束后,清空文本框中内容的。
例如在运行程序后,依次单击了标题为“1”、“7”、“+”、“5”、“=”的几个命令按钮,其结果如图2所示。
图2 计算器程序运行界面
在这个计算器程序中只能进行一些简单的运算,如果读者有兴趣,可以为其增加一些新的功能。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
八字火太旺,最好名字里取名带金带水的那些字
什么是傣族人民的节日什么是彝族人民的节日
百慕大与黑麦混薄草皮的混播比例大概是多少
我有一件元代黑釉曜变大碗,请问现在市场价值
王者边境突围,当队友被击倒后,如何最快赶到
矩阵中运算可行时ABC等于ACB吗?其中ABC均为矩
汽车型号带T是什么意思
送给文科男朋友什么类型的生日礼物
前进区佳木斯昊天舒名茶名酒哪位知道具体地址
那里有人在种植羊肚菌啊??我想实地考察一下!!
谁在大美兵团买过葡萄干,请问那儿口感如何?
微技术 halo VI多少钱?
新冷媒和氟里昂 这2种制冷剂有什么区别?哪个
神于天神是什么意思
鱼塘放虾前应该怎样处理
推荐资讯
IE11无法安装支付宝怎么办
oracle存储过程怎样重命名,除了用or replace
别人老问你在干什么,是什么意思
健盘和机箱上和显示屏上灯都亮着为什么显示屏
江苏境内或临近几个省有哪些动漫设计的大专学
iphone4 突然没有外放声音了?
蒙迪欧和昊锐哪个好
matlab中 错误使用set,尝试已锁定对象,怎么
流动人口存在什么问题
我只想知道均码的胸围有多少CM
德语:die Höllen auf Erden 人间地狱
真心、诚心,区别是?
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?