vb实验报告.docx
《vb实验报告.docx》由会员分享,可在线阅读,更多相关《vb实验报告.docx(10页珍藏版)》请在冰豆网上搜索。
vb实验报告
一、实验目的
1、掌握数组的应用:
(1)数组的定义
(2)数组的基本操作,包括数组的输入输出、数组元素的比较、求平均值、数组的排序等。
2、会使用过程编程和字符串操作
(1)sub过程的定义与调用
(2)function过程的定义调用
(3)字符串的大小写转换操作
3、掌握基本控件的使用
包括常用标准控件的使用,如标签、按钮、文本框、单选按钮、滚动条等。
4、掌握菜单和工具栏的使用
二、设备与环境
硬件:
多媒体计算机
软件:
Windows2000以上的操作系统、VisualBasic集成开发环境
三、实验内容
1、先进入欢迎界面,在屏幕上显示"欢迎您使用本程序",并弹出密码框,等待输入密码。
2、密码正确后进入系统主界面,主界面包括“数组应用”、“过程应用”、“控件应用”和“退出”等菜单。
3、“数组应用”菜单中包括“数组操作”子菜单,单击此菜单,弹出“数组操作”窗体。
4、“过程应用”菜单中包括“字符转换”子菜单,单击此菜单,弹出“字符转换”窗体。
5、单击“控件应用”菜单,弹出“数学运算”窗体。
6、单击“退出”菜单,退出程序运行。
四、实验结果及分析
设计步骤如下所示。
1、先进入欢迎界面,在此界面上添加一个标签,屏幕上显示"欢迎您使用本程序",并弹出密码框,等待输入密码。
设计界面如下图所示。
图1:
欢迎界面
编写代码,单击窗体开始系统登陆。
事件代码如下所示:
PrivateSubLabel1_Click()
Form2.Show
EndSub
2、密码框界面设计。
在窗体上添加两个标签,两个文本框,两个命令按钮。
设计界面如下图所示。
图2:
登陆界面
如果在文本框中输入的密码正确,则成功登陆系统主界面;
“确定”按钮的click事件代码如下所示:
PrivateSubCommand1_Click()
DimiAsInteger
IfText1="1"Then
Form3.Show
EndIf
EndSub
PrivateSubForm_Load()
Text1.PasswordChar="*"
EndSub
3、系统主界面设计。
密码正确后进入系统主界面,主界面包括“数组应用(m1)”、“过程应用(m2)”、“控件应用(m3)”和“退出(m4)”等菜单,并提供相关工具栏或命令按钮。
设计界面如下图所示。
图三:
系统界面
4“数组应用”菜单中包括“数组操作”子菜单,单击此菜单,弹出“数组操作”对话框,如图4所示。
在名称为“数组操作”的窗体上有一个label控件,4个text控件及7个命令按钮,功能如下:
启动数组操作后,界面上除“输入”及“返回”按钮之外,其他按钮均不可用(灰色显示),
当单击“输入”按钮之后,利用inputbox必须连续输入10个整数。
若输入为非数字符号,则给出警告“输入数据无效,请重新输入,请输入第“i”个数”。
输入完毕后,“输入”按钮变灰,其他变为可用状态。
按相应的按钮可分别将输入的数据升序或降序排列,及求最大、最小值,并在右侧对应的文本框中显示,单击“清空”按钮将所有文本框清空。
图4:
数组操作
编写代码,事件代码如下所示:
“输入“按钮的click事件代码如下所示:
PrivateSubCommand5_Click()
Fori=0To9
n:
a(i)=InputBox("请输入第"&i&"个整数","提示")
ForK=1ToLen(a(i))
n=Mid(a(i),K,1)
IfNot(n>="0"Andn<="9")Then
MsgBox"您输入的数据无效,请重新输入第"&i&"个数","错误"
GoTon:
EndIf
NextK
Nexti
Command1.Enabled=True
Command2.Enabled=True
Command3.Enabled=True
Command4.Enabled=True
Command5.Enabled=False
Command6.Enabled=True
EndSub
“升序排列“按钮的click事件代码如下所示:
PrivateSubCommand1_Click()
n=UBound(a)
Fori=0Ton-1
Forj=0Ton-1-i
IfVal(a(j))>Val(a(j+1))Then
t=a(j):
a(j)=a(j+1):
a(j+1)=t
EndIf
Nextj
Nexti
Fori=0Ton
Text1=Text1&a(i)&","
Nexti
EndSub
“降序排列“按钮的click事件代码如下所示:
PrivateSubCommand2_Click()
n=UBound(a)
Fori=0Ton-1
imax=i
Forj=i+1Ton
IfVal(a(j))>Val(a(imax))Then
imax=j
EndIf
Nextj
t=a(i)
a(i)=a(imax)
a(imax)=t
Nexti
Fori=LBound(a)ToUBound(a)
Text2=Text2&a(i)&","
Nexti
EndSub
“最大值“按钮的click事件代码如下所示:
PrivateSubCommand3_Click()
Dimi%,imax%,t%
Max=Val(a(9)):
imax=1
Fori=0To8
IfMaxMax=a(i)
EndIf
Nexti
Text3=Max
EndSub
“最小值“按钮的click事件代码如下所示:
PrivateSubCommand4_Click()
Dimi%,imin%,t%
Min=Val(a(0))
Fori=1To9
IfMin>Val(a(i))Then
Min=a(i)
EndIf
Nexti
Text4=Min
EndSub
“清空“按钮的click事件代码如下所示:
PrivateSubCommand6_Click()
Text1=""
Text2=""
Text3=""
Text4=""
Command1.Enabled=False
Command2.Enabled=False
Command3.Enabled=False
Command4.Enabled=False
Command5.Enabled=True
Command6.Enabled=False
EndSub
“返回“按钮的click事件代码如下所示:
PrivateSubCommand7_Click()
Form3.Show
EndSub
5“过程应用”菜单中包括“字符转换”子菜单,单击此菜单,弹出“字符转换”对话框,如图5所示:
在“字符转换”窗体上有两个文本框、三个单选按钮和一个命令按钮。
运行时,在text1中输入若干个大写和小写字母,并选中一个单选按钮,再单击“转换”按钮,则按选中的单选按钮的标题进行转换,结果放入text2。
图5:
字符转换
编写代码,事件代码如下所示:
“转换“按钮的click事件代码如下所示:
PrivateSubCommand1_Click()
Dimn%
IfOption1Then
n=Len(Text1)
Fori=1Ton
K=Mid(Text1,i,1)
If"a"b=UCase(K)
ElseIf"A"b=LCase(K)
EndIf
Text2=Text2&b
Nexti
EndIf
IfOption2Then
Text2=UCase(Text1)
EndIf
IfOption3Then
Text2=LCase(Text1)
EndIf
EndSub
6单击“控件应用”菜单,弹出“数学运算”对话框,如图6所示。
在“数学运算”窗体上有一个名称为cmd1、标题为“计算”的命令按钮;两个水平滚动条,名称为hs1和hs2,其max属性均为100,min属性为1;四个标签,名称为lab1、lab2、lab3和lab4,标题分别为“运算数1”、“运算数2”、“运算结果”和空白;此外还有一个包含四个单选按钮的控件数组,名称为opt1,标题为“+”、“-”、“*”和“/”。
程序运行后,移动两个滚动条中的滚动框,用滚动条的当前值作为运算数,如果选中一个单选按钮,然后单击命令按钮,相应的计算结果将显示在lab4中。
图6:
数学运算
编写代码,事件代码如下所示:
“计算“按钮的click事件代码如下所示
PrivateSubCommand1_Click()
DimnAsInteger
IfOption1Then
n=HScroll1.Value+HScroll2.Value
Label4.Caption=HScroll1.Value&"+"&HScroll2.Value&"="&n
ElseIfOption2Then
n=HScroll1.Value-HScroll2.Value
Label4.Caption=HScroll1.Value&"-"&HScroll2.Value&"="&n
ElseIfOption3Then
n=HScroll1.Value*HScroll2.Value
Label4.Caption=HScroll1.Value&"*"&HScroll2.Value&"="&n
ElseIfOption4Then
n=HScroll1.Value/HScroll2.Value
Label4.Caption=HScroll1.Value&"/"&HScroll2.Value&"="&n
EndIf
EndSub
PrivateSubHScroll1_Change()
Text1=HScroll1.Value
EndSub
PrivateSubHScroll1_Scroll()
Text1=HScroll1.Value
EndSub
PrivateSubHScroll2_Change()
Text2=HScroll2.Value
EndSub
PrivateSubHScroll2_Scroll()
Text2=HScroll2.Value
EndSub
7单击“退出”菜单,退出程序设计
8、实验总结
通过本次综合实验,复习了数组的应用,使用过程编程和字符串操作,基本控件的使用(包括常用标准控件的使用,如标签、按钮、文本框、单选按钮、滚动条等。
)巩固了对VisualBasic程序设计基础知识的掌握,提高了综合运用基本控件编程的能力。