一、概述:
Visual Basic是一种面向对象的可视化程序设计语言,采取了事件驱动的编程机制。
VB程序的两种运行方式:解释方式运行,编译方式运行。
对象:世间万物皆为对象;VB中所有可见的界面元素及大部分硬件资源。
类:具有相同性质的对象的集合;类中的每个对象称为类的实例。
事件:指对象能够识别并作出反应的外部刺激。
方法:系统已经设计好的,在编写过程中可以使用的一些特殊程序。
VB编程设计的一般步骤:总体-界面-属性-代码
二、语言基础:
常量:程序运行过程中不变的常数。VB中,分为直接常量和符号常量。
变量:程序运行中可以变化的量。
二进制:B 八进制:O 十进制:D 十六进制:H
变量命名规则:
必须以字母或汉字开头,不能包含小数点等运算符,不能与VB的关键字重名,不能超过255个字符,变量名不能重复。
三、控制结构:
顺序结构 选择结构 循环结构
顺序结构:按照语句的书写顺序执行,但仅有的顺序结构不能处理复杂的问题。
Print方法中:
tab函数: tab(n)可以对输出结果进行定位。 spc函数: spc(n)可以跳过n列。
chr(13) 回车符 chr(10)换行符 Ucase 换成大写 Lcase 换成小写
MsgBox("系统发生故障,请重新启动!",1+16,"错误")
提示信息 对话框类型 对话框标题
a=InPutBox("请输入系统口令:","口令输入","*")
提示内容 标题 默认值
选择结构:根据不同的情况作出不同的选择,执行不同的操作。
条件语句:
一、1.单行条件语句
If…then
2.块结构条件语句
If…then
语块1
Else
语块2
End if
先判断条件,为真,进行语块1,否则执行语块2。
3.条件语句的嵌套
If…then
if…then
else
end if
Else
if…then
else
end if
end if
4.使用IIF函数
IIf(<条件表达式>,<为真时的值>,<为假时的值>)
循环结构:执行语句时,需要对某些语句重复执行多次,被重复执行的程序段为窜换题。可以简化结构,提高程序的执行效率。
1.Do…Loop 判断型循环
先判断:
Do while<条件>…loop "当型循环" 当条件为真 执行循环
Do until<条件>…loop "直到型循环" 直到条件为真 终止循环
后判断:
Do… Loop while/until <条件> 这种循环至少执行一次循环体
2.for…next 计数型循环
For i=1 to 10 step 1
If max <a(i) then
Max =a(i)
End if
Next i
多重循环:循环体内包含另一个循环语句时,形成了多重循环,又叫多重循环。
五、数组:
数组是由一系列具有相同变量名、相同数据类型的下标变量构成的有序排列。
数组的声明:包括数组名、维数、大小、类型及作用范围。
一维数组 二维数组 字符串数组 可变数组 记录数组 固定数组 动态数组 控件数组
动态数组:声明数组之后,数组的维数、下表的上下界可以改变。
For each…next专门用于数组或对象集合中的每个成员。
For each <成员> in <数组>
[<语句组>]
[exit for]
Next<成员>
六、过程
分为事件过程和通用过程
过程有返回值 函数没有返回值
Sub(子)过程可以建立在窗体模块(.Frm)中,也可以建立在标准模块(.Bas)中。
其命名规则与变量相同,过程名必须唯一,不能超过255个字符。
Sub过程的调用:
1.使用Call语句;
2.直接使用过程名。
Function过程又称为函数。调用:
1.使用call语句;
2.直接使用函数名。
参数传递 规则:个数相等、数据类型相同、顺序一致。
传值ByVal 传送的是值 形参变化 实参不变化 比如复印机
传址ByRef 传的是地址 形参变化 实参也变化 比如打印机
过程的嵌套 在一个过程中调用另一个过程。
过程的递归 一个过程调用过程本身,是一种特殊的嵌套。
模块化:将一个大的任务分解成若干个较小的部分,每一部分承担部分的功能。
变量和过程 有作用域和生命期:
变量的生命周期:动态变量、静态变量。
过程中使用dim定义的变量属于动态变量。退出过程时,内存会自动释放。
全局变量以及用static定义的为静态变量。退出过程时,内存不会被释放。
过程的作用域:模块级、全局级。
模块级(文件级):在某个模块内定义的过程。
全局级(工程级):在Sub或Function过程中用Public关键字或缺省定义的过程。
七、菜单工具栏
下拉式、弹出式
单文档界面SDI(Single Document Interface)
多文档界面MDI(Multiple Document Interface)
菜单编辑器分为:菜单控制区、菜单显示区、菜单编辑区。
Ctrl+E 快捷键打开
八、文件系统处理
文件是指存储在计算机外部存储介质上的信息集合。
Windows操作系统和其他系统一样,是以文件为单位管理数据的。
在文件中,字节是基本的存储单位。
文件分类:
1.按性质分:
程序文件、数据文件。
2.按编码分类
ASCII文件、二进制文件。
3.按存取方式和结构:
顺序文件、随机文件。
顺序文件建立和打开用Open;关闭用Close;写用Print和Write;读用Input和Line Input;
随机文件建立和打开用Open;写用Put;读用Get;
二进制文件基本元素是字节,没有记录的概念,存放的是数据的二进制的值。
二进制文件打开或新建用Open;Put#写、Get#读;
顺序文件是文本文件、写入到顺序文件中的任何类型数据,都会被转换成其ASCII码字符形式存储。
九、键盘和鼠标
键盘事件:
KeyPress事件
Private Sub <对象名>_KeyPress(KeyAscii As Interger)
参数KeyAscii是所按键的ASCII码值。
KeyDown/KeyUp事件
Private Sub <对象名>_event(KeyCode As Interger, Shift As Interger)
参数KeyCode表示按下的物理键,通过ASCII码值或键码常数来识别。
参数Shift表示键盘事件发生时shift、ctrl、alt的状态。
鼠标事件:
MouseMove事件
MouseDown/MouseUp事件
Private Sub <对象名>_event (Button As interger , Shift As interger, X As Single, Y As Single,)
参数Shift表示鼠标事件发生时shift、ctrl、alt的状态。
X,Y表示鼠标的坐标位置。
拖放技术
DragMode属性:
0手动方式 1自动方式
Drag方法:
手动方式下:0取消 1启动 2结束
DragDrop事件:当源对象被拖动到目标对象上并释放鼠标键。
DragOver事件:当源对象被拖动经过目标对象时触发事件。
十、绘制图形
坐标系统是绘[对象名].Line [[Step] (x1,y1)]-[Step] (x2,y2) [,颜色],B[F] 矩形
Circle:[对象名].Circle [Step] (X,Y),半径,[,颜色] 画圆
[对象名].Circle [Step] (X,Y),半径,[,颜色],[<起始角>,<终止角>] 弧扇形
[对象名].Circle [Step] (X,Y),半径,[,颜色],[<起始角>,<终止角>][,纵横比] 画椭圆
十一、数据库
数据库(DataBase)就是按照一定的组织结构存储在计算机上的相关数据的集合。
特点:数据结构化、数据独立性、数据共享、减少冗余。
比较流行的数据库:层次数据库、网状数据库、关系数据库。
关系型数据库应用最多。
访问数据的方法:
ActiveX数据对象(ADO)、远程数据对象(RDO)、数据访问对象(DAO)
SQL结构化查询语言是访问数据库的标准语言。
Select * from table1 where name = "小明"
Group by Group by table.field
按照表字段分组并将每组整合成一条记录。
Order by Order by table.field [ASC|DESC][table.field2 [ASC|DESC]]
将查询的结果依据表字段按照递增或者递减进行排序,缺省排序为递增(A-Z,0-9)。
ASC递增 DESC递减
Having 基于之前分组的结果再设定一个条件
动作查询:
1.生成表查询 select into
2.添加查询 insert into
3.删除查询 delete
4.更新查询 update
Recordset对象及其与记录指针相关的几个方法:
MoveFirst:将当前记录位置移动到Recordset中的第一个记录。
MoveLast:将当前记录位置移动到Recordset中的最后一个记录。
MoveNext:将当前记录下移一个记录(向Recordset的底部)。
MovePrevious:将当前记录位置向上移动一个记录(向记录集顶部)。
Move:移动Recordset对象中的当前记录的位置。
Addnew:增加一条记录。
Delete:删除当前记录。
VB可以访问的数据库类型:
Jet数据库、ISAM数据库、ODBC数据库。
VB提供访问数据库的控件类型:
Data控件、ADO Data控件、
VB提供数据库访问接口:
DAO对象、ADO对象、
十二、OLE
OLE(Object Linking and Embedding,对象链接与嵌入)控件可以将其他程序的对象插入到VB中,从而增强VB与其他应用程序共享数据及传递数据的能力。
链接对象与嵌入对象的不同之处在于插入到OLE控件的对象存储于何处,以及将对象插入到OLE控件后是如何更新的。
链接:只是在OLE控件中插入了该对象的地址,而不是对象本身;如果数据源中数据变化,则OLE中数据也变化。
嵌入:插入的是真正的数据,数据随VB应用程序一起存储。
链接与嵌入各有优缺点:
链接方式占用内存小,但数据容易受影响而丢失;
嵌入方式占用内存大,但数据不易受影影而丢失。
API函数:
Appliccation Program Interface 应用程序接口,是Windows操作系统提供给应用程序的一组函数集合,大都由C语言编写。
API功能:系统服务、窗口管理、图形设备接口、多媒体。