第二章 Vb简单的程序设计 ( 4学时)
2.1 程序设计方法的发展
2.2 VB中的有关概念
2.3 建立简单的应用程序
2.4 基本控件和属性
2.5 工程的管理及环境的设置
2.6 生成可执行文件和制作安装盘
2.7 程序调试
2.8 常见错误
2.1 程序设计方法的发展
1.初期的程序设计高运行效率、少占用内存为目标
2.结构化程序设计程序的可读性、可维护性为目标程序 =算法 +数据结构 的面向过程的程序设计
3.面向对象的程序设计降低程序的复杂性、提高软件的开法效率和改善工作界面为目标程序 =对象 +消息 的面向对象的程序设计
2.2对象的有关概念
1.类类是创建对象实例的模板,包含了创建对象的属性描述和行为特征的定义,
2.对象是类的一个实例,继承了类的属性、方法。
Vb中常用的对象有,窗体、控件等。
3.对象的建立和命名
4.对象的三要素
( 1)属性对象的性质,即用来描述和反映对象特征的参数。
( 2)方法对象的行为,即将一些通用的过程编写好并封装起来,作为方法供用户直接调用。
( 3)事件响应对象的动作称为事件,它发生在用户与应用程序交互时。如单击控件、鼠标移动、键盘按下等。
事件过程指附在该对象上的用户编写的程序代码,是事件的处理程序。
事件驱动过程是图形用户界面的本质,由用户控制而代码作出响应。
5,VB程序的执行步骤如下:
( 1)启动应用程序,装载和显示窗体
( 2)窗体(或窗体上的控件)等待事件的发生;
( 3)事件发生时,执行对应的事件过程;
( 4)重复执行步骤( 2)和( 3) ;
( 5) 直到遇到,END”结束语句结束程序的运行或按“结束”强行停止程序的运行。
2.3建立简单的应用程序以 例 2.1为例
1.建立用户界面的对象
2.对象属性的设置
3.对象事件过程及编程
4.程序运行和调试
5.保存文件
2.4基本控件和窗体一,常用属性
1.Name名称属性创建的对象名称,有默认的名,在程序中,控件名是作为对象的标识而引用,不会显示在窗体上。
2.Caption标题属性该属性决定了控件上显示的内容。
3.Height,width,top和 left属性
L e f t
T o p
He i g
ht
W i dt h
4.Enabled属性控件是否可操作,当设置为 false时,呈暗淡色,禁止用户进行操作,
5,Visible属性控件是否可见,当设置为 false时,用户看不到,但控件本身存在。
6,Font属性
Fontname 字体 Fontsize字体大小 Fontbold是否是粗体
Fontitalic 是否斜体 Fontstrikethru是否加一删除线
Fontunderline是否带下划线例 2.2 在窗体是建立两个命令按钮
Command1和 Command2,Command2
的 Font通过属性窗口设置,其余属性通过代码实现。
7,Forecolor前景颜色属性设置控件的前景颜色(即正文颜色 ),其值是一个 16进制常数,用户可以在调色板中直接选择所需颜色。
8,Backcolor背景颜色属性
9,Backstyle背景风格属性
0-transparent:透明显示,即控件背景颜色显示不出来
10,BorderStyle边框风格属性
0-None:控件周围没有边框
1-Fixed Single:控件带有单边框。
11,Alignment属性控件上正文水平对齐方式
0,正文左对齐 1,右对齐 2,居中
12,AutoSize属性控件是否根据正文自动调整大小,False.
13,WordWarp属性
AutoSize True时,WordWarp才有效按正文字体大小在垂直方向上改变显示区域的大小。
14.TabIndex属性决定了按 Tab键时,焦点在各个控件移动的顺序。各个控件默认
TabIndex值就是以控件建立时 的顺序,第一个为 0.
15.控件默认属性反映该控件最重要的属性,使用时可省略属性名。,
注意,Command的默认属性为 Default,当该属性为 True,当按 Enter
键,该控件起作用。
例 2.3
控件设置效果默认控件名
N a m e
标题
C a pt i o n
有关属性设置
Fo r m 1 颜色、对齐、
鼠标属性例
M o us e Po i nt e r = 99,M o us e I c o n= K e y 04,i c o
L a be l 1 左对齐 A l i g nm e nt = 0,B o r de r St y l e = 1
L a be l 2 居中 A l i g nm e nt = 1,B o r de r St y l e = 1
L a be l 3 自动 A ut o Si z e = T r ue,W o r dW a r p= Fal s e,B o r de r St y l e = 1
L a be l 4 背景白 B a c kC o l o r = & H 00FF FF FF &,B o r de r St y l e = 0
L a be l 5 前景红 Fo r e C o l o r = & H 000000FF &,B o r de r St y l e = 0
标题图标控制菜单框最小化按钮 最小化按钮边框样式二,窗体
1.属性
Caption标题
MaxButton,MinButton
Icon,ControlBox
Picture,AutoRedraw
BorderStyle ( 0 1 2 3 4 5 )
WindowsState ( 0-正常,1-最小化,2-最大化)
2.事件
Click,DblClick和 Load
Load 当装入窗体时激发,通常用于 对属性和变量初始化
3.方法
Print,Cls和 Move等例 2.4 上述属性,Click,DblClick和 Load 事件演示。
三,标签 Label
用于显示文本 (输出 )信息,不能作为输入信息的界面。
例 2.5,显示浮雕效果的文字,实现方法:字颜色、标签位置四,文本框 TextBox
是一个文本编辑区域,可在该区域输入,编辑和显示正文内容。
1.其他属性
Text,正文内容
Maxlength,设置正文的最多字符个数,0任意长度值,,
MultiLine,是否为多行,默认一行,FALSE
ScrollBars,当 MultiLine为 True时,该属性才有效,表示滚动条的形式
0-None,1-Horizontal,2-Vertical,3-Both。
Locked,是否可被编辑属性,False,表示为可编辑。
PassWord,口令字符,Text属性返回输入的数据,屏幕显示该字符,
SelStart,SelLength,SelText,选中文本的起始、长度、内容。
例 2.6 复制选中的文本
2.常用事件
Change,当改变文本框的 Text属性时会引发该事件,
KeyPress(KeyAscii As Integer),同上,并可返回一个 KeyAscii参数
KeyAscii 为 13,按回车键 ;为 0 去除刚输入的字符,
LostFocus,当控件失去焦点时发生,
GotFocus,当控件获得焦点时发生,
3.常用方法
[对象,]SetFocus,是把光标移到指定的文本框对象中 。
4.文本框的应用 数据过滤例 2.7 要求输入合法的数字数据。当输入结束时(按 Tab键),对于输入正确的数据,显示正确信息;对输入的非数字数据,则响铃
(Beep)、显示错误信息、清除文本框中的内容,并使焦点重新回到文本框。
Text2_ LostFocus 当输入结束按 Tab键时,该事件激发
IsNumeric(Text2),判断是否输入非数字数据,
Text2.SetFocus,使焦点重新回到文本框五,命令按钮 CommandButton
接受用户输入的命令,输入命令可以有三种方式,
鼠标单击 Tab键焦点到该按钮 快捷键
1,其他属性
Caption,命令按钮显示的内容,可设置快捷键,例 &Ok,显示 Ok
Value,检查该按钮是否按下,该属性在设计时无效,
Picture,按钮可显示图片文件 (.bmp和,Ico),当 Style为 1时有效
Style,确定显示的形式,0 只能显示文字,1 文字、图形均可 。
ToolTipText,设置工具提示,和 Picture结合使用。
2.事件
Click
3.例 2.8
建立一个允许剪切、复制和粘贴的简单便笺板程序。
增加内容:利用 MouseMove事件决定命令按钮的有效性,
即当选中内容,“剪切”、“复制”按钮有效,否则无效。
六 常 用方法方法是面向对象的,故使用的形式为,[对象,]方法
1.Print方法形式,[对象,]Print[{Spc(n)|Tab(n)}][表达式列表 ][; |,]
作用,在对象上输出信息对象,窗体、图形框或打印机 (Printer),省略对象在窗体上输出。
Spc(n)函数:插入 n个空格,允许重复使用。
Tab(n)函数:左端开始右移动 n列,允许重复使用。; (分号 ):光标定位上一个显示的字符后。
,(逗号 ):光标定位在下一个打印区的开始位置处。
无 ;,换行。
开始打印的位置是由对象的 CurrentX和 CurrentX属性决定,
缺省为打印对象的左上角 0,0。
注意,Print方法在 Form _Load事件过程中起作用,必须设置窗体的
AutoRedraw为 True。
例 2.9 显示图形
Private Sub Form_Click()
For i = 1 To 5
Print Tab(i); String(6 - I,"▼ "); Spc(6); String(I,"▲ ")
Next i
End Sub
考虑:若把 Spc(6)换成 Tab(6),效果如何?
2,Cls方法形式,[对象,]Cls
作用,清除运行时在窗体或图形框中显示的文本或图形。
注意,不清除在设计时的文本和图形。
3,Move方法形式,[对象,]Move 左边距离 [,上边距离 [,宽度 [,高度 ]]]
作用,移动窗体或控件,并可改变其大小。
对象,可以是窗体及除时钟、菜单外的所有控件例 2.10 图形起始点 (左上角 )移到窗体的中心,同时图形缩小
50%。
五,应用举例例 2-11 编一计算月支付贷款的程序。现要求根据房产商提供的信息,买房者选择房型、面积、单价、按揭期等信息,计算每月支付代款的程序。
第一个窗体:列表框选择数据、标签显示数据、文本框输入数据;
第二个窗体:图形框显示房屋的平面图。
Pmt函数计算月支付贷款
2.5工程的管理及环境的设置一,工程的组成工程文件包含了一个应用程序的所有文件,
窗体文件(,frm),控件及属性、事件过程和自定义过程
窗体的二进制数据文件(,frx),自动产生同名,frx文件。
标准模块文件(,bas)
类模块的文件(,cls)
资源文件(,res)
ActiveX控件的文件(,ocx)
二,创建、打开和保存工程三,添加、删除和保存文件注意,
1.窗体名和窗体文件名概念,
窗体名,窗体的 Name属性,在代码中用来引用该窗体,同一工程不能有相同的窗体名;
窗体文件名,窗体存放在磁盘上的文件名,该文件包含了该窗体的所有控件属性和代码,同一文件夹不能有相同的文件名。
2,在工程中添加现存的窗体时,只是对该窗体文件的引用纳入工程。因此,
如果更改窗体并保存它,会影响包含此窗体文件的任何工程。
3,在工程中删除窗体时,仅将此窗体从工程里删除掉,但是窗体文件仍存在于磁盘上。但是,如果在 VB之外删除一个窗体文件,VB不能更新此工程文件,当打开此工程时,将显示一个文件丢失的错误信息。
4.对窗体文件改名方法二,
1).打开工程,另存为?Form” 实现文件的复制 保存工程文件
2).利用编辑程序打开工程文件,修改 FORM=XXX的文件名窗体文件名窗体名
2.6生成可执行文件和制作安装盘以工程文件例 2.11为例
1.生成可执行文件文件 /生成 V6B2-11.exe文件,然后 关闭 Visual Basic6.0。
2.制作安装盘
运行 V B6.0中文版工具,Package & Deployment”,在向导的指导下:
,打包”:把工程中用到的各种类型的文件进行打包压缩后,存放到特定的目录下。
,展开”:再把这些打包的文件展开到用户可以携带的安装介质软盘、光盘等。
3.检测安装程序在没有 VB6.0系统的环境下,执行安装盘中的 Setup.exe文件,将发 行盘进行安装。
2.7程序调试
.错误类型
( 1)编辑错误在编辑代码时,VB会对键入的代码直接进行语法检查 。 当发现代码存在打字错误,遗漏关键字或标点符等语法错误,VB在 Form窗口中弹出一个子窗口,提示出错信息,出错的那一行变成红色 。 这时,用户必须单击,确定,按钮,关闭出错提示窗,然后对出错行进行修改 。
( 2)编译错误编译错误指按了,启动,按钮,VB开始运行程序前,
先编译执行的程序段时,产生的错误 。 此类错误由于用户未定义变量,遗漏关键字等原因产生 。 这时,Visual
Basic也弹出一个子窗口,提示出错信息,出错的那一行被高亮度显示 。
( 3) 运行错误运行时错误指 VB在编译通过后,运行代码时发生的错误。
这类错误往往是指令代码执行了一非法操作引起的。例如类型不匹配、试图打开一个不存在的文件等。
( 4) 逻辑错误程序运行后,得不到所期望的结果,这说明程序存在逻辑错误 。 这类错误往往是程序存在逻辑上的缺陷所引起 。
例如,运算符使用不正确,语句的次序不对,循环语句的起始,终值不正确等 。 通常,逻辑错误不会产生错误提示信息,故错误较难排除,需要程序员仔细地阅读分析程序以及调试 。
2 调试错误
( 1) VB的三种模式
设计模式 [设计 ]
进行程序的界面设计、属性设置、代码编写等。
运行模式 [运行 ]
执行“运行 /启动”命令,可以查看程序代码,但不能修改。
中断模式 [中断 ]
当在运行模式,按了“中断”命令或当程序出现运行时错误时进入中断模式。可以查看代码、修改代码、检查数据。
( 2)调试窗口有三个调试窗口,它们是:“立即”窗口、“监视”窗口、
和“本地”窗口。可单击视图菜单中的对应命令打开这些窗口

( 3) 设置断点和逐语句跟踪断点是告诉 VB挂起程序执行的一个标记,当程序执行到断点处即暂停程序的运行,进入中断模式 。 设置或删除断点的步骤:
中断模式下,直接查看某个变量的值,只要把鼠标指向所关心的变量处,稍停一下,就在鼠标下方显示该变量的值 。
断点标记当前行
2.8常见错误
1,使用中文标点符号系统产生“无效字符”,以红色显示
2,字母和数字形状相似小写字母,l”和数字,1”形式相同、小写字母,o”与数字,0”。
3,对象名称 (Name)属性写错
Text1,Text2,Command1
txtInput,txtOutput,cmdOk
4.对象的属性名、方法名、标准函数名写错尽量使用自动列出成员功能。正确的系统按规定的大小写表示。
5,无意形成控件数组建立控件时小心使用“复制”、“粘贴”按钮
6,打开工程时找不到对应的文件保存文件时先保存窗体,frm文件、再保存,vbp文件,注意路径。