《面向对象程序设计》实验指导书.docx
《《面向对象程序设计》实验指导书.docx》由会员分享,可在线阅读,更多相关《《面向对象程序设计》实验指导书.docx(19页珍藏版)》请在冰点文库上搜索。
《面向对象程序设计》实验指导书
实验一熟悉VisualBasic集成开发环境
一、实验目的
1.了解VisualBasic语言的功能特点。
2.熟悉VisualBasic的开发环境。
3.掌握建立、编辑和运行一个简单的VB应用程序的全过程。
二、实验内容
创建一个“标准EXE”类型的应用程序。
要求学生建立、编辑、调试、运行和保存简单的VB程序。
三、实验步骤
1.熟悉VisualBasic的开发环境。
(1)定制第一个开发环境。
1)单击“工程窗口”、“属性窗口”、“窗体布局窗口”及“工具箱窗口”右上角的关闭按钮X,将其全部关闭。
2)单击Form窗口的最大化按钮口,将Form窗口放到最大。
(2)定制第二个开发环境。
1)选择“视图”菜单中的“工程资源管理器”选项,显示“工程资源管理器”窗口。
2)选择“视图”菜单中的“属性窗口”选项,显示“属性窗口”。
3)选择“视图”菜单中的“窗体布局窗口”选项,显示“窗体布局窗口”。
4)选择“视图”菜单中的“工具箱”选项,显示“工具箱”窗口。
5)将“工程资源管理器”、“属性窗口”、“窗体布局窗口”、“工具箱”四个窗口用鼠标拖动到合适的位置。
(3)增加窗体。
单击“工程”菜单中的“添加窗体”选项,或者在“工程资源管理器”中的“工程”图标上单击鼠标右键,系统弹出一个快捷菜单,选择“添加窗体”选项,将在Form1的基础上添加一个窗体Form2。
(4)增加标准模块。
单击“工程”菜单中的“添加模块”选项,可增加一个标准模块Module1,再单击一次增加第二个便准模块Module2;或者在“工程资源管理器”中的“工程”图标上单击右键,系统弹出一个菜单,将鼠标移到“添加”菜单,选择“添加模块”选项,将在工程1种添加一个标准模块Module1,在选择“添加模块”选项,将在工程1种添加第二个标准模块Module2。
(5)增加类模块。
单击“工程”菜单中的“添加类模块”选项,或者在“工程资源管理器”中的“工程”图标上单击鼠标右键,系统弹出一个菜单,将鼠标移到“添加”菜单,选择“添加类模块”选项,将在工程1种添加一个类模块Class1。
2.启动VB6.0,创建一个“标准EXE”类型的应用程序。
(1)界面设计。
分别选中工具箱中的文本框工具和命令按钮工具,在窗体上绘制出所需控件,并调整其大小和位置。
(2)在属性窗口中为个控件设置属性。
各控件属性设置见表1-1。
(3)双击命令按钮,则出现代码窗口,在代码窗口中编写事件过程代码。
事件过程代码如下:
PrivateSubCommand1_Click()‘单击显示按钮时执行的程序,本行自动生成
Text1.text="欢迎您适用VisualBasic"
EndSub‘本行自动生成
PrivateSubCommand2_Click()‘单击结束按钮时执行的程序,本行自动生成
End
EndSub‘本行自动生成
(4)运行调试程序。
1)单击工具栏中的保存图标,存储工程。
2)单击工具栏中的运行图标,开始运行。
3)单击“显示”按钮,在正文框中显示设定的字符。
4)单击“结束”按钮,终止程序。
各控件属性设置
控件名称
属性名称
属性设置值
Form
Name
Form1
(窗体)
BackColor
浅蓝色
Caption
欢迎程序
Fontname
宋体
CommandButton
Name
Command1
(命令按钮)
Caption
显示(&D)
CommandButton
Name
Command2
(命令按钮)
Caption
结束(&X)
TextBox
Name
Text1
(文本框)
Fontname
宋体
Fontsize
10
Caption
(空白)
四、思考题
(1)VisualBasic有几种工作模式?
(2)保存新建的工程文件时,若不改变目录名,则系统默认的路径是什么?
(3)将调试通过的工程经“文件”菜单的“生成exe文件”编译成名.exe后,将该可执行文件到其他机器上不能运行的主要原因?
(4)当使用上下文相关的帮助时,选择要帮助的内容后,如何出现MSDN窗口直接显示所需的帮助信息?
(5)窗体窗口与程序窗口如何切换?
如何显示项目窗口?
如何显示属性窗口?
(6)如何输入某一个对象的程序?
(7)当建立好一个简单的应用程序后,假定该工程仅有一个窗体模块,问该工程涉及到多少个文件要保存?
若要保存该工程中的所有文件,正确的操作应先保存什么文件?
再保存什么文件?
(8)总结用VisualBasic建立一个完整的应用程序的过程。
实验二顺序、选择、循环程序设计
一、实验目的
掌握顺序、选择、循环程序设计。
二、实验内容
1.“转换温度”程序。
2.“三个数排序”程序。
3.求和程序。
三、实验步骤
1.“转换温度”程序。
编写一个华氏温度与摄氏温度之间转换的程序,要使用转换的公式是:
F=9/5*C+32,其中F为华氏温度,C为摄氏温度。
(1)建立新文件。
(2)根据窗体格式,建立窗体。
调整窗体上控件的大小和位置,使外形美观。
(3)编写程序代码,用按钮实现转换。
2.“三个数排序”程序。
按从大到小的次序显示。
对逐个数进行比较,如果后面的数大于前面的数,则交换。
(1)建立新文件。
(2)根据窗体格式,建立窗体。
调整窗体上控件的大小和位置,使外形美观。
(3)编写程序代码,掌握单分支条件语句与双分支语句的使用。
3.求和程序。
实现从1到任意选取的数字之间的整数的累加运算。
拖拽水平滚动条方块,可显示并设定要累加的选取数字。
单击“总计”按钮,可执行从1到选取的数字之间的整数的累加运算,并显示在正文框中,正文框中不允许直接输入数字,单击“结束”按钮,可结束程序的执行。
(1)建立新文件。
(2)根据窗体格式,建立窗体。
调整窗体上控件的大小和位置,使外形美观。
(3)编写程序代码,掌握For循环语句的使用。
四、思考题
(1)顺序结构的特点是什么?
请举一个生活中符合顺序结构的例子。
(2)在SelectCase语句中,关键字Case后面的取值格式有哪几种?
(3)结构化程序设计具有哪些优点?
(4)设计一个收款计算程序。
掌握常用控件(文本框、标签、命令按钮)的应用。
(5)设计一个判断整数奇偶性的程序。
任意输入一个整数,判定该整数的奇偶性。
(6)编写程序,从键盘输入任一X的值,求分段函数
XX>0
Y=0X=0
|X|X<0
的值。
实验三数组及过程程序设计
一、实验目的
1.掌握数组的声明、数组元素的引用
2.应用数租解决与数组有关的常用算法问题。
3.掌握自定义函数过程和子过程的定义和调用方法。
4.掌握递归概念和使用方法。
二、实验内容
1.排序程序。
要求学生能够将输入的一个数组中的元素按从小到大的顺序排序,然后显示排序结果。
2.查询程序。
查询用户的电话号码和住址。
三、实验步骤
1.“排序程序”程序。
(1)建立新文件。
(2)根据窗体格式,建立窗体。
调整窗体上控件的大小和位置,使外形美观。
(3)编写程序代码。
可定义一个具有10个元素的数组,首先对其赋值,可利用For循环来对这10个元素从键盘输入,然后按此顺序输出,从大到小排序后再输出。
2.“查询程序”程序。
查询用户的电话号码和住址。
(1)建立新文件。
(2)根据窗体格式,建立窗体Form1。
添加窗体Form2。
调整窗体上控件的大小和位置,使外形美观。
(3)在“工程”中选择“添加模块”选项,在弹出的对话框中添加通用模块,Module1模块的通用过程代码。
(4)编写程序代码。
四、思考题
(1)掌握二维数组的声明、数组元素的引用。
(2)静态数组与动态数组的区别是什么?
在声明静态数组、重定义动态数组时的下标都可以用变量来表示吗?
(3)函数过程和子过程的区别是什么?
(4)形参和实参具有怎样的对应关系?
(5)变量、函数和过程的作用域分别是什么?
(6)编写程序。
输出1000之内的所有完数。
(提示:
“完数”是指一个数恰好等于它的因子之和,如6的因子有3个,分别为1、2、3,而6=1+2+3,因而6就是完数。
)
(7)递归问题。
有4个人坐在一起,问第4个人多少岁?
他说比第3个人大3岁。
问第3个人多少岁?
他说比第2个人大3岁。
问第2个人多少岁?
他说比第1个人大3岁。
最后问第一个人,他说20岁,请问第4个人有多大岁数。
实验四常用控件的使用
一、实验目的:
1.掌握应用控件的用户界面设计方法。
2.掌握一般类控件的使用方法,树立可视化的编程思想。
3.掌握选择类控件的常用属性、重要事件和基本方法。
4.掌握控件数组的作用,掌握在设计时创建控件数组的方法、控件数组的使用及其事件的执行。
5.掌握通过工具条控件创建工具栏的步骤和方法。
二、实验内容:
1.距离程序。
2.工具栏的创建。
三、实验步骤:
1.“距离程序”程序。
要求学生能够使用“文本框”,“滚动条”,“命令按钮”等控件,实现当移动滚动方块到最左边时,数字显示为0米,移动滚动方块到最右边时,数子显示为1000米。
单击结束按钮时,结束程序。
(1)建立新文件。
(2)根据窗体格式,建立窗体。
调整窗体上控件的大小和位置,使外形美观。
(3)编写程序代码。
2.“工具栏的创建”程序。
(1)执行“工程”菜单中的“部件”命令,屏幕上出现“部件”对话框,选中MicrosoftWindowCommoncontrol对应的复选框,按下“确定”按钮,使工具箱中添加了工具栏控件,将工具条控件和图像列表控件加载到工具箱中。
(2)分别选择工具箱中的Toolbar按钮和ImageList按钮,在窗体上绘制一个工具栏和一个图像列表。
(3)用鼠标右键单击图像列表框控件,选取“属性”,然后选择“图像”,在其中添加图像。
(4)用鼠标右键单击在窗体上建的工具栏,选取“属性”,在“图像列表”组合框中选择“ImageList1”,然后继续选择“属性页”上的按钮,添加4个按钮,分别将其图像设为1,2,3,4,并将“工具提示文本”分别设为“新建”、“复制”、“打开”和“打印”。
(5)在上述基础上,在输入相应的代码。
四、思考题:
(1)上机调试“设置文本样式和字号程序”,了解选择类控件的使用方法。
(2)什么是快捷键?
要如何建立快捷键?
(3)在VB6.0中,命令按钮的显示形式可以有标准的图形的两种选择,这通过什么属性来设置?
若选择图形的,则通过什么属性来装入图形?
若已在规定的属性里装入了某个图形文件,但该按钮还是不能显示该图形,而显示的是Caption属性的文字,怎样改正?
(4)标签和文本框的区别?
(5)在列表框中添加控件有哪几种方法?
(6)框架的作用是什么?
如何在框架中建立控件?
实验五菜单设计
一、实验目的:
1.了解菜单编辑器的作用,掌握菜单编辑器设计菜单的步骤、方法和技巧。
2.掌握窗口菜单、弹出式菜单和实时菜单的设计方法。
二、实验内容:
1.窗口菜单的设计。
2.快捷菜单的设计。
3.动态菜单的设计。
三、实验步骤:
1.“窗口菜单的设计”程序。
要求学生能够使用菜单编辑器设计窗口菜单,其中包括“文件”和“编辑”栏,在“编辑”栏中有“剪切”、“复制”和“粘贴”菜单项,在窗体上放置一个文本框,要求当文本框中有选取内容时,让菜单的“复制”设成有效,否则无效。
当选择“复制”时,将“粘贴”和“剪切”设成有效,编写有关的程序代码。
(1)建立新文件。
(2)通过菜单编辑器设置菜单。
(3)了解各菜单控件的设置。
(4)编写程序代码。
2.“快捷菜单的设计”程序。
要求为上一个实验中的文本框设计一个快捷菜单。
(1)打开题一创建的文件。
(2)在菜单编辑器上进一步设置菜单。
(3)编写程序代码。
3.建立一个“选项程序”的窗体。
要求条件如下:
单击下拉式菜单选项“增加”,可增加一个新工程,每单击一次增加一个新工程,单击三次则增加三个新工程。
单击下拉式菜单选项“删除”,可删除增加的最后一个选项;单击“结束”按钮可终止程序的执行。
(1)建立窗体。
(2)在菜单编辑器上进一步设置菜单。
(3)编写程序代码。
四、思考题:
(1)在VisualBasic6.0中可以非常方便的在应用程序的窗体上建立菜单。
在设计状态下,如何完成菜单设计?
若想菜单选项在程序运行过程中不可见,应设置菜单选项的什么属性?
(2)弹出式菜单弹出会触发菜单选项的哪一事件过程?
(3)菜单编辑器设计的菜单控件在程序设计中的引用对象是什么?
(4)菜单中的分隔线使用哪一字符?
(5)如何建立菜单控件阵列,它有何用处?
实验六事件和定时器
一、实验目的
1.掌握VB程序设计的事件驱动方法,掌握常用控件的使用。
2.掌握定时器控件的使用。
二、实验内容
1.“按键”程序。
2.“加法测试”程序。
三、实验步骤
1.“按键”程序。
建立一个按键程序,当鼠标左键按下,文本框中显示“鼠标左键被按下”,当鼠标右键按下,文本框中显示“鼠标右键被按下”。
(1)建立新文件。
(2)根据窗体格式,建立窗体。
(3)双击窗体,在代码窗口中单击事件列表框选择“MouseDown”事件,编写相应程序代码,再单击事件列表框选择“MouseUp”事件,编写相应程序代码,单击对象列表框选择“Commond1”对象,单击事件列表框选择“Click”事件,编写相应程序代码。
2.“加法测试”程序。
设计一个加法速度测试程序,用户单击“开始”按钮后开始计时,并分别在文本框1、2中显示加数和被加数。
用户在文本框3中输入答案,按回车键后程序在答案的后面指示对错,并显示出下一道题。
一分钟以后程序统计出出题数量和做对的数量。
此时用户可以单击“继续”按钮继续测试和单击窗体上的X退出。
(1)建立新工程。
(2)根据窗体格式,建立窗体。
(3)编写程序代码。
四、思考题
(1)VisualBasic6.0程序设计中采用事件驱动。
程序是如何执行的?
(2)请指出何时发生对象的MouseDown、MouseUp和MouseMove事件?
(3)KeyDown与Keypress事件的区别是什么?
(4)如果在KeyDown事件过程中将KeyCode设置为0,Keypress的KeyAscii参数会不会受影响?
如果输入的对象是文本框,那文本框的内容是否有影响?
(5)请说明键盘扫描代码(KeyCode)与键盘ASCII码(KeyAscii)的区别。
(6)当用户按下并且释放一个键后触发KeyPress、KeyUp和KeyDown事件,这三个事件发生的顺序是什么?
对于所用的可视化控件一个动作所响应的事件顺序是否相同?
(7)定时器的功能通过什么实现?
(8)设计一个电子时钟。
要求在一个标签中显示当前时间。
(9)编写一程序。
窗体中有一个文本框,在文本框中输入密码,按下回车键后,程序将检查密码输入是否正确,并给出相应的提示。
实验七文件
一、实验目的
1.文件系统控件的使用。
2.文件和目录操作语句和函数的使用。
3.掌握顺序文件的特点和使用。
4.掌握文件的打开、关闭和读写操作。
二、实验内容
1.“对话框”程序。
2.“文件操作”程序。
3.“输入学生成绩”程序。
三、实验步骤
1.“对话框”程序。
联合使用驱动器、目录和文件列表框架构成一个打开文件的对话框。
运行时首先装入窗体Form1,当单击窗体Form1中的“打开文件”命令按钮时,打开窗体Form2,单击窗体中的“退出”命令按钮时结束整个程序的运行。
在窗体Form2中,当依次选定文件类型、驱动器、目录及文件名并单击“打开”命令按钮时,所选中的路径及文件名分别显示在标签及文本框中,此时若单击“完成”命令按钮时,关闭窗体Form2,并且所选中的文件名连同其路径显示在窗体Form1的标签中。
单击窗体Form2中的“取消”命令按钮时,关闭窗体Form2,并且在窗体Form1的标签中显示空的文件名。
(1)建立新工程。
(2)根据窗体格式,建立窗体。
(3)编写相应程序代码。
2.“文件操作”程序。
如果单击“打开文件”按钮,则打开文件“d:
\text.txt”,并在文本框中显示相关信息及文件长度;如果单击“从文件中读一行数据”按钮,则将从文件中逐行读出数据,并显示在文本框中;如果到达文件尾,则显示信息“已到文件尾!
”;如果单击“关闭文件”按钮,则关闭文件“d:
\text.txt”,并在文本框中显示相关信息。
(1)建立新工程。
(2)根据窗体格式,建立窗体。
(3)编写相应程序代码。
3.“输入学生成绩”程序。
建立一个学生成绩文件,每个记录包括学号、姓名、性别、语文、数学和外语,将其存入顺序文件,数据通过键盘输入。
(1)建立新工程。
(2)根据窗体格式,建立窗体。
(3)编写相应程序代码。
四、思考题
(1)什么是文件?
(2)说明随机存取文件的含义?
(3)下列代码的含义是什么?
OnErrorGotoFileError
(4)编写一程序。
将顺序存取文件“C:
\Autoexex.Bat”读入到文本框中。
(5)设计一个九九乘法表,使用Open语句创建顺序文件。
实验八图形功能设计
一、实验目的
1.了解VB的图形功能。
2.掌握VB的图形控件和图形方法。
3.掌握建立图形坐标系的方法。
4.掌握常用几何图形的绘制。
二、实验内容
1.“定义坐标系”程序。
2.“绘制图案”程序。
三、实验步骤
1.“定义坐标系”程序。
在窗体上建立一个坐标系,运行时在窗体上画出坐标系统刻度,用鼠标单击窗体时,可绘出正弦函数图形。
(1)建立新工程。
(2)根据窗体格式,建立窗体。
(3)编写相应程序代码。
2.“绘制图案”程序。
使用Line方法在窗体上绘制艺术图案,构造图案的算法为:
把一个半径为r的圆周等分为n份,然后用直线将这些点两两相连。
提示:
在半径为r的圆周上第i个等分点的坐标为xi=r*cos(i*t)+x0,yi=r*sin(i*t)+y0其中,t为等分角,(x0,y0)为圆心坐标,r为圆半径。
在双重循环控制内用Line方法将这些点两两相连。
(1)建立新工程。
(2)根据窗体格式,建立窗体。
(3)编写相应程序代码。
四、思考题
(1)VisualBasic可处理哪些格式的图形文件?
(2)用Circle方法画圆弧和扇形时,若起始角的绝对值大于终止角的绝对值,则圆弧角度在何范围?
(3)怎样用RGB函数实现色彩的渐变?
(4)窗体的Height、Width属性和ScaleHeight、ScaleWidth属性有什么区别?
(5)当标签和文本重叠在一起时,能否将标签放置到文本框上方?
(6)怎样设置Line控件对象的线宽?
(7)使用Pset绘制像素点的大小由何因素确定?
(8)在VisualBasic中如何设置坐标模式?
其主要的坐标模式有哪些?
(9)怎样实现窗体图标动感?
(10)设计指针式小闹钟。
利用时钟控件的Timer控制指针的转动。
(11)设计电子贺年卡。
使用Pset方法在窗体上画100个大小不同的随机点,点的颜色也随机变化。
实验九多媒体技术
一、实验目的
1.掌握用多媒体控件制作简单多媒体的方法。
2.掌握API函数的使用。
二、实验内容
1.利用MMControl制作一个VCD播放器。
2.制作一个CD播放器,要求采用API函数来实现。
三、实验步骤
1.“制作一个VCD播放器”程序。
利用Mmcontrol制作VCD播放器,不但具有播放VCD的功能,还有播放AVI,Wav的功能。
当用VCD播放器播放文件时,先执行“文件”菜单的“打开”菜单项,选择要播放的VCD数据文件“*.Avi”或“*.Wav”,再单击VCD播放器的播放键,可开始播放。
播放状态下能看到指示进度的进程条在随播放进程变化,还能看到状态条中有关帧数的变化,能通过Slider选择任意的播放位置开始。
(1)建立新工程。
从“工程”菜单中单及“部件”菜单项,从“部件”对话框中选中MicrosoftMultimediaControl6.0、MicrosoftWindowsCommonControl6.0、MicrosoftCommonDialogControl6.0确定后,这时工具箱中可出现多媒体控件MMControl、高级控件Slider、StatusBar和通用型对话框CommonDialog控件。
按题目要求创建VCD播放器窗体。
(2)根据窗体格式,建立窗体。
(3)编写相应程序代码。
2.“CD播放器”程序。
要求:
实现的功能有CD碟的播放、暂停、停止、选曲、弹出光驱、合上光驱等功能。
(1)建立标准的EXE工程。
(2)根据窗体格式,建立窗体。
(3)编写相应程序代码。
单击“文件”菜单中的“加载文本文件”菜单项,出现“SelectaTextAPIFile”对话框选择“Win32api”一项,单击“打开”按钮,出现“API浏览器”对话框,可在“键入你要查找的内容的开头几个字母”文本框中输入想找的API函数。
通过“添加”按钮把查到的函数添加到“选定项”,单击“复制”按钮,文本被送到剪贴板上,
在使用API函数之前,必须在模块中说明要使用的API函数。
单击“工程”菜单的“添加模块”对话框。
用“新建”选项卡选择“模块”一项,单及“打开”按钮,此时产生一个名为Module1的模块。
然后用“粘贴”菜单项把已经送到剪贴板上的API函数说明粘贴到新建的模块中。
四、思考题
(1)怎样指定MMControl控件的多媒体设备类别?
(2)怎样打开MMControl控件Mci设备?
(3)在VB中如何使用API函数?
(4)在设计应用程序什怎样显示播放进度?
(5)在设计程序时,如何控制声音?
实验十VB与数据库技术
一、实验目的
1.了解使用可视化数据库管理器创建数据库和数据表的使用方法。
2.了解数据控件的使用,利用数据控件的.recordset对象来访问数据库中的数据资源。
3.掌握Data数据控件和ADO数据控件的使用。
4.掌握数据库邦定控键的使用。
二、实验内容
1.创建和访问数据库。
要求学生能够使用可视化数据库管理器建立一个Access数据库,设计一多文档窗体,在各子窗体内通过文本框、标签、图像框等绑定控件分别显示数据库中各表内的记录。
2.数据库表的编辑操作。
三、实验步骤
1.创建和访问数据库。
(1)在VisualBasic开发环境内单击“外接程序”菜单中的“可视化数据管理器”命令,或在操作系统桌面上运行VisualBasic系统目录中的Visdata.exe,打开可视数据管理器。
(2)使用可视化数据库管理器建立一个Access数据库Mydb.mdb,包含student表、lesson表和class表。
2.设计多文档窗体。
(1)设计主窗体form1,在主窗体中编辑菜单,实现对各子窗体的访问。
(2)在各子窗体内通过文本框,标签,图像框等绑定控件分别显示student表、lesson表和class表内的记录。
对数据控件属性进行设置,使之可以对记录集直接进行增加、修改操作。
3.数据库表的编辑操作。
(1)设计一个窗体,通过菜单对student表提供添加、删除、修改和浏览功能。
(2)在上题的基础上再添加一个“查询”菜单,当单