📄 050201.htm
字号:
<html>
<head>
<meta http-equiv="Content-Language" content="zh-cn">
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>vb study</title>
<style>
<!--
td {font-size: 9pt}
A:link {text-decoration: none; color: #0033cc;font-size: 9pt}
A:visited {text-decoration: none; color: #0066CC;font-size: 9pt}
A:active {text-decoration: none; color: #ff0000; font-size: 9pt}
A:hover {text-decoration: underline; color: #000000;font-size: 9pt}
-->
</style>
</head>
<body>
<div align="center">
<center>
<table border="0" cellpadding="0" cellspacing="0" width="98%">
<tr>
<td width="100%"><a href="#">你的位置</a>:<a href="http://www.xxby.com" target="_blank">华生小屋</a>--<a href="#">VB学习</a>--<a href="#">代码</a></td>
</tr>
<tr>
<td width="100%">
<p align="center">代码</td>
</tr>
<tr>
<td width="100%"><br>
代码基础:<br>
变量的简单定义格式:dim 变量名 这种定义未指明变量的数据类型,这时的变量类型是"变体类型",它自动识别字符串或数字(字符串要加引号)。 <br>
数据类型的定义方法: <br>
定义变量最简单的方法是用"Dim"关键字,它的语法: <br>
Dim 【变量名】As 【数据类型】<br>
如:Dim Index As Integer<br>
也可以在一行中定义多个变量,如:<br>
Dim Index As Integer , Number As Long<br>
但把多个变量定义成同一类型不能写:<br>
Dim Index , Number As Integer ,这样实际index是变体变量。<br>
有时为了简便,也以符号进行简单的定义,作用是和上面一样的。整型可以用"%"代替,长整型可以用"&"代替,单精度可以用"!",双精度实型可以用"#"定义,字符型用"$",如刚才的第一个例子可以写成:<br>
Dim Index% 等价于 Dim Index As Integer<br>
对于常量的定义用Const定义,如:Const COLOR=255。<br>
const PI=3.1415926 <br>
注:变量一般用小写,常量则全部大写。<br>
对于程序中经常出现的数值,应设常量,这样一是书写方便,其二,如果要改变该数值,只需改变定义常量的语句值,而不需改变每个语句,提高了效率。<br>
重点笔记: 变量<br>
变量名要以字母开头,在变量名中唯一能用的符号是下划线(_),相同的大写或小写字母的变量,视为同一变量,即不区分大小写。<br>
变量的作用范围关健字:Public(公用), Private(单个模块),Dim(局部);在VB代码区域中包含四类模块区域:窗体,MDI窗体,标准模块,类模块。这是第一层;每一模块区域又分成了通用区域和过程区域,这是第二层。这就是VB的结构,各个区域之间界线分明。变量受这些因素的影响也要采用不同方式,标明它的作用范围是全局还是单个模块还是单个过程。<br>
1,在单个事件过程中可见的:在本过程内部用DIM关健字;<br>
2,在单个模块中可见的:在本模块顶部(窗体模块会标明"通用"字样)声明段用Private关健字(也可用DIM关健字);注意,不能在一个过程内部声明模块级变量。<br>
3,在所有模块可见的:在任一模块顶部(窗体模块会标明"通用"字样)声明段用Public关健字,注意:1,在Form窗体模块顶部的"通用"部分不能声明public的数组,常数,结构类型和API函数。2,在一个过程的内部不能声明公用变量。<br>
在一个事件中用DIM声明的局部变量,每次触发时产生,完成后消失,不会保留事件运行后的值;如果要一直保留一个局部变量的值,要使用--静态变量。在过程内部用static关健字声明,它能在第二次触发该事件时保留前一次运行结果,继续运算,而不会来个"重新DIM,初始化",它只在运行时第一次触发该事件时进行初始化。<br>
注:静态变量如果要初赋值,不能直接进行,要根据变量未赋值的状态使用if语句,如lxn为变体变量:if lxn=EMPTY then lxn=336525,例下:<br>
Private Sub Command1_Click()<br>
Static lxn As Integer<br>
lxn = 5 错!!应改为 If lxn = 0 Then lxn = 5<br>
lxn = lxn + 1<br>
Print lxn<br>
End Sub<br>
变量的数据类型:<br>
一,数值型。<br>
1,整型(integer),声明字符%,范围-32768到32768。占用2字节。<br>
2,长整型(long),声明字符&,范围-2147483648到2147483648。占用4字节。<br>
3,单精度实型(single),声明字符!,小数点后有效数字7位,占用4字节。<br>
4,双精度实型(double),声明字符#,小数点后有效数字15位,占用8字节。<br>
5,货币型(currency),声明字符@,(Email地址中的那个at号"小老鼠"),这种类型精度高,专用于货币计算或定点计算,小数点后有效数字4位,占用8字节。<br>
6,字节型(byte),存储0--255之间的整数,常用来存储二进制数据,图形和声音文件等,它只占1个字节,节省资源!<br>
二,字符串型(string),声明字符$.<br>
1,变长字符串变量,平常定义的如:dim(public) lxn as string,运行时自动调整长度。<br>
2,定长字符串变量,定义如:dim(public) lxn as string*50,这时lxn被定义为包含50个字符的变量,给它赋值时若少于50个字符,则用空格补足(要删除空格用Trim和RTrim函数),多于50个则删掉。使用定长字符串的情形如在随机文件的读写操作中,注:定长字符串不能在类模块中定义为公用(public)变量。<br>
三,日期型(date)<br>
任何可辩认的文本日期都可赋值给date变量,日期文字前后要加上#号,或直接用文本定义,格式:dim 变量名 as date.<br>
dim lxn as date <br>
赋值格式:变量=#(或")月/日/年/ 时:分:秒 AM或PM#(或")<br>
lxn=#06/14/01 20:50:31 AM# 或<br>
lxn="06/14/01 8:50:31 PM"<br>
如果是一个数值直接赋给日期型变量,如lxn=35477.998,则小数点左边的值代表日期信息,小数点右边的值代表时间信息(如午夜为0中午为0.5),上面lxn的时间值显示为97-2-16 23:57:07.(我没看懂)。<br>
四,逻辑型(boolean)<br>
也叫布尔型变量,它只有两个值:true(-1)和false(0).[问题:当为true时值是1还是-1?我试了一下是-1,即用print cint(x)试的。]<br>
五。变体型(variant)<br>
可适用于各种数据类型,一个没有指明类型的变量VB就指定为此类型。<br>
六,对象型(object或commandbutton或textbox......等对象名,模块名)<br>
这种变量为指向程序中对象的指针,先声明为某类型对象,格式:<br>
dim 变量 as 对象类型名 (如果对象为object,则表示可指向任何类型对象) dim lxn as commandbutton (定义lxn为按纽对象类指针),<br>
赋值格式: set 变量名=对象名称<br>
Set lxn=command1<br>
这时,就可以用lxn来代替command1了,如: lxn.caption="退出"<br>
注:如果加上New关健字,可以新建窗体,类模块,对象库中的对象,对象变量就成了1个对象。Set变量名=New对象名称 。<br>
七,自定义类型,也叫结构类型。<br>
第1步:建立类型:必须在模块级用type语句定义,格式:<br>
private(或public) type 类型名<br>
成员1 as 类型 <br>
成员2 as 类型……<br>
end type<br>
如: private type ldd<br>
a as string<br>
b as integer<br>
c as string<br>
end type<br>
第2步:定义此类型的一个变量:格式:<br>
dim(或public等) 变量名 as 刚才创建的类型 <br>
如: dim lxn as ld d<br>
第3步:变量的赋值及使用:用点号连接每一个成员,分别赋值,赋值格式:<br>
变量.成员1=值<br>
变量.成员2=值……<br>
如: lxn.a="李小敏"<br>
lxn.b=336525<br>
lxn.c="李新宁"<br>
凡是在程序中使用时,就要以"变量.成员名"来引用。<br>
八,枚举类型。在模块通用部分声明,格式:<br>
Private(Public) Enum 类型名 private enum lxn<br>
成员1(可选=常数) 李新宁 <br>
成员2(=常数)…… 李小敏 <br>
end Enum end Enum<br>
然后在程序中定义一个此类型变量,Dim 变量 as 类型。如:dim m as lxn<br>
意思是:变量m的"取值范围"是 :李新宁(值为0)或李小敏(值为1)<br>
"值为0"?不给成员赋值,缺省状态时第1个成员为0(相当于写:李新宁=0)<br>
第2个成员为1…类推,总之成员的值为一个"长整数"。可自己赋给。枚举类型的作用是在代码中可简化某些总在几个值之间切换的情况,引用如写if m=李新宁 then end<br>
(这种类型实用价值不大)。<br>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -