VB笔记.docx
《VB笔记.docx》由会员分享,可在线阅读,更多相关《VB笔记.docx(45页珍藏版)》请在冰点文库上搜索。
VB笔记
第一章VB导论
1.VB是由微软公司开发的
作用:
用于开发Windows环境下应用程序的工具。
VB6.0是32位操作系统下应用程序的开发工具。
采用面向对象的程序设计方法。
采用事件驱动方式的程序设计原理。
2.基本概念
对象:
动作体的逻辑模型,可控制的某种东西(应用程序的每个窗体和窗体控件)
三个特性(属性,方法,事件)
窗体:
窗口、子窗口
控件:
放在窗体上的用于和用户交互的各种部件(文本框、标签,命令按钮,选项按钮、列表框)
(1)属性:
对对象特性的描述。
属性例子:
窗体名称名称
窗体标题Caption
前景颜色Forecolor
背景颜色Backcolor
(2)方法:
指对象可以做的动作,是对象本身所具有的功能。
通过“方法”,对象做一个动作或实现一个功能
方法例子:
显示Show;隐藏Hide;移动Move
(3)事件:
对象所识别的动作,能使该对象进入活动状态的一种操作或动作。
事件例子:
单击;双击
3.过程:
规定对象在被某个“事件”激活时应发生的各种动作及所要进行的信息处理的具体内容的代码段。
应用程序:
过程的集合
事件驱动过程:
程序的运行没有固定的顺序,只要当该事件发生时,则所规定的过程就开始执行。
4.vb程序开发步骤
1)创建程序的用户界面
2)设置界面上各个对象的属性
3)编写对象响应事件的程序代码
4)保存工程
5)运行和调试应用程序,检查并排除程序中的错误
6)生成可执行程序
第三章常用控件与界面设计
一:
1.窗体(Form)是为了设计VB应用程序界面或对话框而提供的窗口,是包容用户界面或对话框所需的各种控件的“容器”。
(1)窗体的常用属性
a.Name(名称):
窗体名称。
窗体名称在程序代码中作为窗体对象的标识名。
窗体名称可以缺省。
窗体名称也可以自定义。
窗体名称自定义的命名规则:
必须以字母开头,可以包含数字和下划线,但不能包含空格或标点符号。
长度不得超过40个字符。
b.Caption:
窗体标题。
窗体标题是出现在窗体标题栏的文本内容。
窗体标题默认与窗体名称相同。
标题也可以自定义,只要是字符即可,不受其他约束
C.BackColor与ForeColor:
窗体的背景色与前景色。
颜色值用一个长整数表示。
点击属性栏右边的,会弹出一个颜色设置组合框。
同样,使用“视图”菜单中的“调色板”命令也可以设置窗体等对象的前景色和背景色。
d.BorderStyle:
边框样式
用数值来表明窗体边框的风格。
E.Font:
正文字体。
设置窗体上所显示的正文的字体、字号和字形等。
点击字体属性栏右边的对话框按钮,弹出“字体对话框”
(如图)。
默认的字体为“宋体、常规、小五号”。
说明:
Font是窗体的一种属性,同时它又被看作一个对象
Font本身还具有Name,Size,Bold,Italic等属性。
f.Icon:
图标
设置位于窗体左上角控制盒上的图标
当窗体最小化为任务栏上的按钮时,也使用此图标。
g.Left、Top、Height、Width:
窗体的位置与大小。
默认单位为特维(Twip)1特维=1/1440英寸
h.Enabled:
活动属性
决定窗体能否被访问。
i.Visible:
可视属性
决定窗体是否可视
j.Picture:
图片属性
(2)窗体的方法
窗体可调用多个方法。
常用的方法有:
Hide:
隐藏窗体。
Move:
把窗体移到某个位置。
Print:
显示文本或数据。
PrintForm:
打印窗体。
Refresh:
强制重新绘制一个窗体。
Show:
显示窗体。
Cls:
清除。
(3)窗体的事件
体可以响应许多事件。
常用的事件有:
Click:
单击。
DbClick:
双击。
Load:
装载。
UnLoad:
卸载。
Resize:
调整尺寸。
Activate:
激活—变成当前窗口。
Deactivate:
失去激活
2.制定属性窗口
方法一:
在设计态,通过“属性”窗口为其设定各种属性值
方法二:
在程序代码中改变属性值(运行时改变)
格式:
Object.Property=Expression
即:
对象名.属性名=表达式(属性值)
提示:
如果属性值是字符串,则用西文引号括起来。
3.引用窗体的方法
VB中的所谓“方法”可使“对象”执行一个动作或任务。
格式:
Object.Method或Object.Method[Arg1,Arg2···]
即:
对象名.方法名
或对象名.方法名[参数1,参数···]
4.窗体的装载、卸载、End语句
(1)装载语句:
把窗体或其它对象载入内存,但不显示
语句格式:
LoadObject
VB在执行时自动装载窗体,引发窗体的Load事件。
使用Show方法时,也自动载入窗体。
(2)卸载语句
语句格式:
UnloadObject
或:
UnloadMe窗体从内存卸载
(3)End语句
语句格式:
End终止应用程序,卸所有窗体
5.Print方法
格式:
[Object].Printp1p2···
作用:
将文本输出到指定对象上。
如果缺省对象,则将内容
输出到当前窗体上。
S可以是;或者,
,作用:
输出项按制表列输出,每个制表列宽度为14个字符,超出制表列宽度的输出项可占据多个制表列。
;作用:
两个输出项将紧接着输出,但数值输出项的尾部自动加一个空格,头部加一个符号位(正数为空格)。
二:
常用控件
控件是包含在窗体中的对象。
控件同窗体一样,也是辅助用户快速完成界面设计的有效工具。
控件和窗体组成与用户交互的可视化部件。
1.文本框(TextBox)
用于接收用户在框内输入的信息(≤32k),或显示由程序提供的信息。
1)属性
Name:
名称。
Text:
文本属性。
PasswordChar:
密码属性
文本框还有BorderStyle,Enabled,Font,ForeColor等属性
MaxLength:
最大长度。
MultiLine:
多行属性。
Alignment:
对齐属性
(2)方法:
SetFocus:
设置焦点;使光标指向指定的文本框。
(3)事件:
Change:
改变。
LostFocuse:
失去焦点。
KeyPress:
按下字符键。
2.标签(label):
标签常用作其他控件的说明。
(1)属性
Font,Name,Caption,Alignment属性:
同窗体和文本框
AutoSize属性:
自动缩放,即大小自适应属性。
默认为“False“,若为“True“,根据文本大小自动调整标签宽度。
(2)方法(Refresh、Move)
(3)事件(Click、DblClick)
3.命令按钮(CommandButton)
(1)属性:
Caption:
标题;Cancel:
取消,本属性设为True,按ESC键等同单击本按钮
Default:
默认,本属性设为True,按Enter键等同单击本按钮
(2)方法:
SetFocus:
设置焦点
(3)事件:
Click:
单击
4.列表框(ListBox)
(1)属性:
List:
列表。
ListCount:
列表框中所含项的总数。
ListIndex:
选中项的索引号。
Text:
文本。
Columns:
列数。
Sorted:
排序。
Selected:
选中。
(2)方法
AddItem:
添加列表项。
格式:
[对象名].AddItem<列表项文本>[,插入位置序号]
注意:
若不指定插入位置,则插入到列表尾。
RemoveItem:
删除列表项。
格式:
[对象名].RemoveItem删除项序号
Clear:
删除列表所有项。
(3)事件:
Click(单击);Dbclick(双击)事件(但很少用)
5.组合框(ComboBox)
组合框是文本框和列表框的组合方式,它包含一个文本框和一个列表框。
用户可在文本框部分输入选项,也可用列表框部分选择选项。
(1) 属性
Style:
外观属性。
组合框有三种外观
Text:
文本属性。
为用户从列表框中选定的文本内容或直接输入文本框的内容。
(2)方法:
AddItem、RemoveItem、Clear。
6.图像控件(Image)图片框(PictureBox)
图像控件用来显示一个来自硬盘上的位图文件(.bmp)或图标文件(.ico),并可随意调整图形的大小。
图片框不仅可以显示图形和文本,还可创建动画图形。
7.选项按钮(OptionButtom)、复选框(CheckBox)和框架控件(Frame)
a.选项按钮与复选框
(1)属性
选项按钮Value:
选中与否标记。
Value=True表示选中;默认为False表示未选中。
复选框Value:
选中与否标记
Value=1表示选中;默认为0表示未选中;2表示不能访问。
(2) 方法Move、Refresh
(3) 事件Click:
单击
b.框架控件:
用作其他控件的容器。
c.结合框架和选项按钮组(或复选框组).在窗体上可以创建选项组。
8.水平滚动条(HScrollBar)、垂直滚动条(Scrollbars)
(1)属性:
Max、Min:
设置控件的变化范围。
LargeChange:
用于单击滚动条区域时,Value属性值的改变量。
SmallChange:
用于单击滚动条两端箭头时,Value改变量。
9.计时器控件(Timer)
属性:
Internal、Enabled
事件:
Timer
三:
制作菜单
1.菜单概述(菜单条;菜单;菜单项;子菜单;弹出式菜单)
2.使用菜单编辑器
(1)菜单编辑器中各项的使用:
标题框:
Caption属性;菜单之间分隔符“-”;键盘访问使用&+字母
名称框:
Name属性;
索引框:
Index属性;
快捷键框:
为菜单项选定快捷键;
“复选”:
Checked属性;“有效”:
Enabled属性;
“可见”:
Visible属性;
3.建立菜单的步骤
(1)设计菜单的结构;设置菜单项及各菜单项的子菜单。
(2)用菜单编辑器建立各菜单项。
(3)为菜单项编写事件过程代码。
4.使用帮助
使用帮助菜单或F1键
第四章数据、表达式与简单程序设计
过程:
具有特定书写格式、包含若干可被作为一个整体执行的代码行的组合。
根据执行的方式:
;
事件过程:
为窗体及窗体上的各种对象编写的用来响应由用户或系统引发的各种事件的代码行就是“事件过程”
当指定的事件发生时,该过程即会被激活执行。
属于窗体模块中。
私有(private)。
通用过程:
一个应用程序中的多个窗体共享一些代码,或一个窗体内不同的事件过程可以共享一些代码。
这些被共享的代码构成的过程称为“通用过程”
缺省情况下是公有的(public)
由事件过程或其他通用过程调用而执行
模块:
用于将不同类型过程代码组织到一起而提供的一种结构
窗体模块:
应用程序中每个窗体都有一个相对应的窗体模块。
包含用于处理发生在窗体中的各个对象的事件过程,而且包含有窗体及窗体中各个控件对象的属性设置以及相关的说明。
标准模块:
被多个应用程序中多个窗体共享的代码,组织到“标准模块”。
保存的是通用过程。
4.2代码的书写规则
1.语句:
语句是组成VB程序的最基本成分。
(1)语句的一般形式:
<语句定义符>[语句体]
一条语句作用:
向系统提供必要的信息或规定系统执行某些操作。
(2) 书写注意
1)代码不区分字母的大小写,如:
Ab与AB等效;
2)系统对用户程序代码进行自动转换;
对于关键字,首字母被转换成大写,其余转换成小写
对于用户定义的变量、过程名,以首次定义为准进行转换
2.语句书写规则
(1)续行:
(空格+下划线字符“_”)<=25后续行
(2)同一行上书写多条语句,语句间用冒号“:
”分隔
(3) 一行允许多达1023个字符
(4)注释行
以Rem开头,注释整行;
以注释符“'”引导
注释内容从注释符开始直到该行结束
利用“编辑”工具栏的“设置注释块”、“解除注释块”来
设置/取消多行注释。
4.3.1数据类型
1.数值数据类型Integer;Long;Single;Double;Currency;Byte
⑴Integer:
整型(占2字节)
表数范围:
-215~215-1,即-32768~32767
表示形式:
±n或±n%
⑵Long:
长整型(占4字节)
表数范围:
-231~231-1;;;;;表示形式:
±n&
⑶Byte:
字节型(占1字节)
表数范围:
0~255(无符号)
⑷Single:
单精度(4字节)---7个有效位
表示形式:
带小数点数;用指数(E)表示;数字后面加“!
”
⑸Double:
双精度(8字节)---15个有效位
表示形式:
用指数(D)表示
数字后面加“#”
⑹Currency:
货币型(8字节)---19个有效位
表示形式:
数字后面加“@”
2.Boolean型:
占2个字节,只有两个值:
True(-1);False(0):
3.String型:
表示形式:
用双引号括起来或变量名后加“$”
注意:
●""与""的区别
●字符串123"abc的表示:
"123""abc"
4.Date型:
---占用8个字节;表示形式:
用#号括起来
5.Variant型:
变体类型;是一种通用的、可变的数据类型
6.Object型:
用于保存任何对象的引用
§4.3.2变量/常量的命名规则
规则:
⑴变量或常量名必须以字母或汉字开头;
⑵由字母、汉字、数字、下划线组成;
⑶长度不超过255个字符;
⑷在VB中变量名的字母不区分大小写;
⑸不要与关键字同名(Dim,string等)
⑹为了提高程序的可读性,在变量名可加前一约定的前缀
Int、lng、sng、dbl、bln、cur、dt、str、vnt、byt
§4.3.3常量
常量:
在程序运行期间值不能改变的量
1.数值常量:
由正负号、数字和小数点组成,正数的正号可以省略。
2.字符常量:
把一串字符用引号括起来,构成一个字符常量
3.逻辑型常量:
只有两个取值:
True和Fals
4.日期型常量:
一般表示形式为:
mm/dd/yyyy。
5.符号常量:
常量在程序中也可用符号表示,常量名长度不超过255个。
格式:
[Public|Private]Const常量名[As类型]=表达式
在一行中可放置多个常数说明,可用逗号分隔。
6.系统提供常量:
应用程序和控件提供的系统定义的常量
§4.3.4变量
变量:
在程序的运行过程中其值可以变化的量
声明变量的目的:
根据声明的类型决定系统为它分配的存储单元。
1.显式声明变量:
Public|Private|Dim|Static]变量名[AS数据类型]
注意:
(1)在VB中一个汉字与一个西文字符视为一样,算一个字
(2)在窗体和类模块中,不能用Public定义定长字符串变量
2.变量作用域
作用范围/区别作用范围定义方法定义位置
局部变量当前过程Dim|Static在过程内
窗体/模块变量当前窗体或模块中的所有过程Private|Dim在窗体或模块的声明部分
全局变量工程内的所有过程Public在窗体或模块的声明部分
3.隐式声明变量:
是指使用的变量未用声明语句进行声明而直接使用
未声明直接使用的变量均默认为Variant型
也可在变量名后加一个规定数据类型的说明符加以说明
4.OptionExplicit句语
(1)作用:
强制显式声明变量。
即使用任何一个变量必须“先声明,后使用”
(2)增加OptionExplicit语句的方法:
在代码编辑器的通用/声明部分输入:
OptionExplicit
§4.4运算符和表达式
1.算术运算符:
包括:
+-、MOD、\(整除)、/*、-(负号)、^(乘方)
2.字符串运算符:
包括:
+、&
3.比较运算符:
包括:
>,<,>=,<=,<>,=,Like,Is
4.逻辑运算符:
包括:
And、Or、Not、Xor
优先级的比较优先级:
高---------------->低
1.几大类比较算术、连接、比较、逻辑
2.算术运算符^,-,(*/),\,MOD,(+-)
3.比较运算符同一级
4.逻辑运算符Not、And、Or、Xor、
1.表达式组成:
包含:
变量、常量、运算符、函数和小括号
表达式结果:
与数据和运算符有关
2.书写规则:
乘号不能省略;括号必须成对出现;
一个表达式在同一行上书写,没有高低、大小区分
3.同一表达式中的数据的类型转换
操作数的数据类型应该符合要求,不同的数据应该转换成同一类型。
在算术运算中,如果操作数的数据精度不同,VB规定运算结果采用精度较高的数据类型。
§4.5赋值语句
1.赋值语句的形式:
变量名=<表达式>例如:
a=“hello”
当系统执行一个赋值语句时,将先求出赋值语句操作符=的右边表达式的值,然后再把该值保存到=号左边的变量中。
2.不同数据类型数据的赋值
如果变量与表达式都是数值类型,系统先求出表达式的值,在将其转换为变量类型后再赋值。
(注意数值的范围,溢出问题)
如果变量为字符型,表达式为数值类型,则系统将把表达式的值转换为字符型赋值给变量。
如果变量为逻辑型,而表达式为数值类型,则所有的非零值,系统都转换为“True”赋给变量,“0”转换为“False”赋给变量。
把一个逻辑值“True”赋给一个整型变量,变量值为-1;“False”赋给变量,变量值为0.
把一个逻辑值“True”赋给字符变量,其值为“True”,“False”赋给字符变量,其值为“False”.
§4.6常用内部函数P52-56
§4.7InputBox函数与MsgBox函数
InputBox函数---输入框
作用:
打开一个对话框,等待用户输入内容。
单击确定,返回输入值(字符型数据)
格式:
变量名=InputBox(提示[,标题][,默认值][,X][,Y])
Msgbox函数--信息框1.语法:
变量=MsgBox(提示内容[,按钮][,标题])
MsgBox提示内容[,按钮][,标题]
2.MsgBox函数的常用参数的说明
提示内容:
必要。
字符表达式,即显示在对话框中的信息
按钮:
可选。
整型表达式,缺省值为0
标题:
可选。
在对话框标题栏中显示的内容。
省略此项,则将应用程序名放在标题栏中
Buttons参数的设置P58-59
第五章选择分支与循环
§5.1算法及程序设计基础
1.算法的概念:
广义:
即解决某个问题或处理某件事的方法和步骤
狭义:
专指用计算机解决某一问题的方法和步骤
2.算法的特征:
确定性、可行性、有穷性、输入性、输出性
3.算法的描述:
广泛使用的是流程图,它使规定的符号来描述算法
4.算法分类:
数值算法:
用于解决一般数学解析方法难以解决的问题。
非数值算法:
用于对非数值信息进行查找、排序等。
例:
用辗转相除法写出求两个自然数的最大公约数的算法
(1)输入两个自然数m,n
(2)r=mmodn
(3)m=n;n=r
(4)若r≠0则重复
(2)(3)步
否则输出m(最大公约数)
§5.2.1If条件语句
1.If…Then结构格式:
(1)If条件Then
(A组语句)
EndIf
执行规则:
若条件成立,执行A组语句;条件不成立,跳过A组语句.
(2)If条件Then语句使用前提:
条件成立时,A组语句中只一条执行语句
2.If…Then…Else结构
格式:
If条件Then执行规则:
条件成立,执行A组语句,
A组语句条件不成立,执行B组语句
Else
B组语句
ENDIf
3.If…Then…ElseIf结构注意:
多分支语句中,有多个分支同时满足,只执行第一个与之匹配的语句块。
注意ElseIf的写法
格式:
If条件1Then
A组语句
ElseIf条件2Then
B组语句
ElseIf条件3Then
C组语句
……
Else
n组语句
EndIf
4.If语句的嵌套
If语句的嵌套是指if或else后面的语句块中又包含If语句。
语句形式:
If <表达式1> Then注意:
(1)对于嵌套结构,为了增强程序的可If <表达式11> Then读性,应该采用缩进形式书写
……
(2)If语句形式若不在一行上书写,必须与EndIf EndIf配对,多个If嵌套,EndIf与它最接近的If配对。
……
EndIf
§5.2.2SelectCase语句
SelectCase结构
SelectCase测试表达式
Case测试项1
A组语句
Case测试项2
B组语句
……
CaseElse
n组语句
EndSelect
§5.3循环结构:
循环是在指定的条件下多次重复执行一组语句
§5.3.1For循环
For循环格式:
For循环变量=初值TO终值[Step步长]执行过程:
语句块
(1)将初值赋循环变量
ExitFor
(2)判断循环变量值是否小于等于终止值;
语句块(3)若是,执行循环体(语句块);
Next循环变量(4)然后将变量增加一个步长;
(5)重复2~4步骤。
(6)否则,结束循环
注意:
⑴初值、终值、步长必须是数值型,
步长为正,初值<终值;若为负,初值>终值;缺省为默认为1
⑵在已知循环次数时使用For循环,循环次数=int((终值-初值)/步长)+1
⑶组成循环体的语句块可以是一条或多条语句
⑷ExitFor表示当遇到该语句时,退出循环体,执行Next的下一句;
⑸ 在循环体内对循环变量可多次引用,但在循环过程中一般不改变其值,
否则影响结果。
⑹退出循环后,循环变量保持退出时的值
§5.3.2Do…Loop循环
1.DoWhile/until<条件>2.D0
循环体循环体
LoopLoopWhile/until<条件>
(1)执行过程:
(先判断,后执行)
(2)执行过程:
(先执行,后判断)
先判断循环条件,先执行循环体,再判断循环条件,
若为真:
执行循环体,再判断循环条件若为真,继续执行循环体;
否则,跳过循环体,执行Loop之后语句否则,结束循环,执行Loop之后语句
区别:
(1)执行顺序不同:
形式一:
先判断,后执行循环体;
形式二:
先执行循环体,后判断
(2)执行次数