VB 版 (精华区)
发信人: bloom (又臭又硬小石头), 信区: VB
标 题: VB入门教程之二
发信站: 哈工大紫丁香 (2000年07月17日10:43:45 星期一), 转信
第二章:事件、属性及数据类型
以后两章可能会比较枯燥,但不可否认也很重要,所以为了学好VB,我们一定要打好基
础才行。
一、事件
通过上一章的例子,你可能对“面向对象的编程”已经有了一定了解,它是由事件驱动
的,对于不同的对象,所能感应到的事件也会不同,譬如说当你把鼠标移进某一区域时
就会触发MouseMove事件,这很直观,也容易理解,但也有些事件比较抽象,下面我来对
一般的事件进行一下解释。
窗体和图象框类事件
Paint事件:当某一对象在屏幕中被移动,改变尺寸或清除后,程序会自动调用Paint事
件。注意:当对象的AutoDraw属性为True(-1)时,程序不会调用Paint事件。
Resize事件:当对象的大小改变时触发Resize事件。
Load事件:仅适用于窗体对象,当窗体被装载时运行。
Unload事件:仅适用于窗体对象,当窗体被卸载时运行。
2.当前光标(Focus)事件
GotFocus事件:当光标聚焦于该对象时发生事件。
LostFocus事件:当光标离开该对象时发生事件。
注意:Focus英文为“焦点”、“聚焦”之意,最直观的例子是,比如有两个窗体,互相
有一部分遮盖,当你点下面的窗体时,它就会全部显示出来,这时它处在被激活的状态
,并且标题条变成蓝色,这就是GotFocus事件,而相反,另外一个窗体被遮盖,并且标
题条变灰,称为LostFocus事件。上面所说的“光标”并非指鼠标指针。
3.鼠标操作事件
Click事件:鼠标单击对象。
DbClick事件:鼠标双击事件。
MouseDown、MouseUp属性:按下/放开鼠标键事件。
MouseMove事件:鼠标移动事件。
DragDrop事件:拖放事件,相当于MouseDown、MouseMove和MouseUp的组合。
DragOver事件:鼠标在拖放过程中就会产生DragOver事件。
4.键盘操作属性
KeyDown、KeyUp事件:按键的按下/放开事件。
KeyDown、KeyUp事件:按键的按下/放开事件。
KeyPress事件:按键事件。
5.改变控制项事件
Change事件:当对象的内容发生改变时,触发Change事件。最典型的例子是文本框(T
extBox)。
DropDown事件:下弹事件,仅用于组合框(ComboBox)对象。
PathChange事件:路径改变事件,仅用于文件列表框(FileBox)对象。
6.其他事件
Timer事件:仅用于计时器,每隔一段时间被触发一次。
二、属性
每个对象都有它的属性,并且“Name”属性是共有的,有了“Name”属性才可以在
程序中进行调用。对于属性,可以在窗体的布局操作中完成,也可以在程序运行中改变
,这取决你的需要,但有些属性是只读的,它只能在控件布局时改变。我将在以后的实
例中具体介绍各个属性的作用。
三、数据类型
学过编程的人都知道大多数的计算机语言都规定了各自的数据类型,VB也不例外。其实
,在一个最简单的程序中数据类型是可以不作规定的,也就是说,变量可以使用各种类
型,但是在一个复杂的程序里,这样做就很危险,因为很可能给同一个变量赋予了不同
的类型,而导致程序出错。所以,为了程序的严谨和便于查看,正确的定义数据类型是
必要的。定义数据的另一个原因是,不同的数据占用不同的内存数量,譬如整型(Inte
rger)数据占2字节,而长整型数据占4个字节,定义合适的数据类型,不管你相信不相
信,它可以节省内存!
VB常用的数据类型有:整型(Integer,表示-32768至32767之间的整数)、长整型(Lo
ng,表示-2,147,483,648至2,147,483,647之间的整数)、实型(Single,表示-3.37E+
38至3.37E+38之间的实数)、双精度实型(Double,表示-1.67E+308至1.67E+308之间的
实数),字符(String,每个字符占一字节,可以储存0~65,535个字符),布尔(Boo
lean,只有两个值True/-1,或False/0)。
数据类型的定义方法:
定义变量最简单的方法是用“Dim”关键字,它的语法:
Dim 【变量名】As 【数据类型】
如:Dim Index As Integer
也可以在一行中定义多个变量,如:
Dim Index As Integer , Dim Number As Long
把多个变量定义成同一类型可以写成:
Dim Index , Number As Integer
更可以在定义时进行初赋值:
Dim Index=3
有时为了简便,也以符号进行简单的定义,作用是和上面一样的。整型可以用“%”代替
,长整型可以用“&”代替,实型可以用“!”,双精度实型可以用“#”定义,如刚才的
第一个例子可以写成:
Dim Index% 等价于 Dim Index As Integer
对于常量的定义用Const定义,如:Const COLOR=255。
为了在程序中便于查阅,我们对变量和常量的写法进行规定,变量一般用小写方式,常
量则全部大写。
注意:使用常量的好处,对于程序中经常出现的数值,应设常量等于它,这样一是书写
注意:使用常量的好处,对于程序中经常出现的数值,应设常量等于它,这样一是书写
方便,其二,如果要改变该数值,只需改变定义常量的语句值,而不需改变每个语句,
提高了效率。
数组的定义类似于变量定义,所不同的是数组需要指定数组中的元素个数,例如:
Dim IntegerArray(99) As Integer
这个数组中包含100个元素,脚标从0到99。
也可以指定脚标的起始值,例如:
Dim IntegerArray(2 to 10) As Integer
这个数组含有九个元素,脚标从2到10。
还可以定义多维数组:
Dim ThreeD(4,2 to 5,3 to 6) As Integer
上例定义了一个三维数组(4×4×4)。
记录的定义
记录定义是把控制权交给用户的方法,它让用户可以定义自己的数据类型,它使用关键
字“Type”,方法是:
Type 【数据类型标识符】
<域名> As <数据类型>
<域名> As <数据类型>
<域名> As <数据类型>
…………………………
End Type
例如,定义一个地址数据:
Type Address
Type Address
Street As String
ZipCode As String
Phone As String
End Type
这个地址数据里包括三个属性,街区、邮政编码和电话,可以把某数据定义成此类型:
Dim MyHome As Address
要调用或改变“MyHome”的值时,类似于对对象的属性的操作:
变量名.域名=“……”
为了简化书写重复的部分,可以用关键字“With”:
With MyHome
.Street=”阜成路”
.ZipCode=”100037”
.Phone=”12345678”
End With
--
又臭,又硬。
小石头
※ 来源:·哈工大紫丁香 bbs.hit.edu.cn·[FROM: 202.118.233.140]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:3.924毫秒