计算机二级笔记VB.docx
《计算机二级笔记VB.docx》由会员分享,可在线阅读,更多相关《计算机二级笔记VB.docx(51页珍藏版)》请在冰豆网上搜索。
计算机二级笔记VB
第一部分
VB设计初步
一、VB简介
微软公司开发出一种可视化的面向对象的编程软件。
二、VB发展史
VB6.0
中文学习班
中文专业版
中文企业版
三、VB的启动、退出方法
退出快捷键ALT+Q
四、熟悉VB的集成开发环境
五、VB特点
1.可视化的界面设计
2.面向对象的程序设计
3.事件驱动的编程机制
4.结构化的程序设计语言
5.数据库访问功能
六、VB程序设计的一般步骤
1.启动VB
2.设计窗体界面,添加控件并修改成设置个对象的属性值
3.编写个对象的事件过程代码
4.运行调试
5.保存文件或发布打包
七、VB的三种运行模式
1.设计
2.运行
3.中断
八、VB程序两种运行方式
1.解释运行
2.编译运行(生成可执行文件)
九、基本概念
类:
具有相同属性的对象的集合
对象:
类中的一个具体实例
对象的三要素:
属性、时间、方法
修改对象属性的语法格式
对象名.属性名=属性值
e.g.:
form1.backcolor=VBred→将背景改为红色
第二部分
窗体、文本框、命令按钮与标签
一、窗体(Form)
1.属性
Name:
对象名
Caption:
显示在标题栏上的文字
Visible:
窗体是否可见(True或False)
Icon:
窗体的图标
ControlBox:
窗体是否有图标、系统菜单和最大化、最小化、关闭
Maxbutton、Minbutton:
窗体是否有最大化最小化按钮,值为True或False
Borderstyle:
边框类型,决定窗体是否可以缩放,值为0,1,2,3,4,5
Left、Top:
觉醒窗口位置
Enabled:
True\False,决定窗体是否可用
Picture:
指定窗体背景图片
Backcolor:
改变背景颜色
字体属性:
fontname字体fotunderline下划线fontsize字号
Fontstrikethru删除线forecolor字色fontitalic倾斜
Fontbold加粗
2.事件
Load事件:
窗体运行即激发的事件(部分代码不能激发)
Click事件:
单机发生
Dblclick事件:
双击发生
Resize事件:
当窗体大小改变时激发的时间
二、标签(Lable)
标签:
用来显示一些提示信息
1.常用属性
Name,Left,Top,Height,Width,Visible,Enabled以上属性同窗口
Caption:
决定标签内显示的信息
Borderstyle:
边框值为0,1
Autosize:
根据内容大小调整标签大小
Alignment:
(Autosize为False时有意义)决定标签中的内容同在标签中的对齐方式。
取值0(左对齐),1(右对齐),2(居中)
Backstyle:
决定标签是否透明,0透明,1不透明
2.常用事件
Click:
单机触发
Dblclick:
双击触发
Mousemove:
移动鼠标至标签上时触发
三、命令按钮(command)
1.常用属性
Name,Left,Top,Width,Height,Caption,Visible,Enabled同上
Style:
0标准1图片(与picture结合使用)
Picture:
与Style取值为1时结合使用改变按钮背景
Default:
为True时,不论光标在哪,按“Enter”时都执行该按钮功能
Cancel:
为True时,按“ESC”时,执行该按钮功能
2.事件
命令按钮只支持Click事件,不支持Dblclick事件
注:
窗体与空间事件过程名的区别
对于窗体,事件过程名始终为“Form_事件”,与对象名无关
对于控件,事件过程名为“对象名_事件”,与对象名有关
四、文本框(Text)
1.常用属性
Name,Left,Top,Width,Height,Visible,Enabled同上
Text:
运行是的默认文本(不可修改时刻修改Locked选项)
Maxlength:
可键入文本最大长度,0为无限,非0数为长度
Passwordchar:
将文本中内容变为该字符(1字节)
Multiline:
是否允许多行显示(最多支持32K个字符)
Scrollbars:
设置滚动条(Multiline为ture时有意义,取值0,1,2,3,0为无,1水平,2垂直,3都有)
Sellength:
所选文本的长度
Selstart:
所选文本的起始位置(从0开始)
Seltext:
所选文本内容
2.事件
Change事件:
但文本框的内容发生改变时引发Change事件
例:
PribateSubCommand1_Click()
Text2.Text=Text1.SelText
EndSud
PrivateSubCommand2_Click()
Text2.Text=Text1.Seltext
Text1.Seltext
EndSub
五、对象的常用方法
1.Move方法
语法为:
对象名.moveLeft,Top,Width,Height
例:
相对移动
PrivateSubCommand1_Click()
Text1.moveText1.Left+200,Text1.Left+200,2*Text1.Width,2*Text1.Height
EndSub
绝对移动
PrivateSubCommand1_Click()
Text1.move500,500
EndSub
2.Print方法:
在窗体或图片框表面上显示指定的内容
对象名.Print(“,或;”分输出项)
对象为窗体时对象名可省略看,Print有计算功能
,间隔为标准格式输出
;间隔为紧凑格式输出
只有Print为空一行
3.Cls方法:
清楚用Print方法打印的内容
对象名.Cls
六、VB的语法规则
1.字母不分大小写,所有符号要在英文状态下输入
2.语句:
程序以语句为单位,一般情况下,一条语句占一行
3.续行:
如果语句太长,用空格加下划线(_)作为续行符结尾
4.一行中写多条语句,用冒号分隔
5.程序行的缩进,使源程序美观易读
第三部分
数据类型、常量与变量、运算符与表达式
一、VB中数据类型
数值型:
整型integer(%)占2字节长整型long(&)
单精度型single(!
)占4字节双精度型double(#)占8字节
货币型currency(@)占8字节字节型byte占1字节
日期型date占8字节,用#号界定
字符型string($)占8字节,用“”号界定
布尔型(逻辑型)boolean占2字节,用true或false表示
变体类型variant占16字节
二、变量
1.变量:
在程序执行过程中存储临时数据的命名内存单
2.命名规则:
(1)以字母开始,可含字母、数字、下划线
(2)不含标点
(3)不多于255个字符
(4)不能与保留关键字重复
3.定义变量格式
Dim变量名As数据类型名,变量名
例:
Dima,b,casInteger
①DimdasString*5定长字符型数据定义
DimeasString变长字符型数据定义
DimxasSingle,yasString,zasBoolean
=Dimx!
y$,zasBoolean
变量在某一时刻只保留最后一个值,每个变量都要指明类型,否则被定义为变体类型,如①中a和b即被定义为变体类型
4.变量赋值
变量名=表达式
5.变量的默认值
数字型默认值为0
逻辑型变量默认值为False
变长字符串默认值为“”
变体类型默认值为Empty
6.强制变量定义
Optionexplicit
该命令输入在通用→声明位置后所有变量必须定义类型后系统才可以识别
三、常量
1.常量:
在程序运行过程中其值一直保持不变的量
2.定义方法
Const常量名[As变量名]=表达式“[]”内可省略
注:
常量不能用变量名式函数赋值,程序运行时,不能再为常量赋值
四、运算符
1.算术运算符
+加法-减法-取负*乘法/除法\整除
Mod求余^指数运算
2.关系运算符
<小于>大于=等于<=小于等于>=大于等于<>不等于
3.字符串运算符
+只连接同位字符型字符串
&可强制链接不同类型字符串
4.日期时间运算符
+和-
5.逻辑运算符
notandor
如:
ac不能写成a五、表达式
1.表达式执行顺序
(1)进行函数运算
(2)算术运算
指数→取负→乘除→整除→取余→加减
(3)关系运算
(4)逻辑运算Not→And→Or
六、内部函数
1.转换函数
(1)Fix()→取整,不四舍五入
e.g:
fix(7.6)=7fix(-7.6)=-7
(2)Int()→取不大于其值的最大整数
e.g:
int(7.6)=7fix(-7.6)=-8
(3)Cint()→四舍五入取整
e.g:
cint(7.8)=8cint(7.2)=7
(4)Asc(“”)→返回该字符ASCII码值
Chr()→返回ASCII码值对应的字符
A~ZASCII码值为65~90
a~z ASCII码值为97~122
0~9ASCII码值为48~57
(5)Ucase()→把小写字符变为大写
Lcase()→把大写字符变为小写
(6)Str()→数值型转为字符型
Val()→字符型转为数值型
2.数学函数
(1)Abs()→取绝对值
(2)Sqr()→取算术平方根
(3)Sgn(x)→符号函数(x>01,x=00,x<1-1)
3.字符串函数
(1)Len()→返回字符串长度
e.g:
Len(“ABC”)=3
(2)Trim()→去出字符串两边空格
e.g:
Trim(“A”)=“A”
LTrim()→去出字符串左边空格
e.g:
LTrim(“A”)=“A”
Rtrim()→去出字符串右边空格
e.g:
Rtrim(“A”)=“A”
(3)Left()→从字符串左边取相应字符数e.g:
Left(1234,2)=12
Right()→从字符串右边取相应字符数e.g:
Right(1234,2)=34
Mid()→从第n个位置取m个字符e.g:
Mid(12345,2,2)=23
(4)Instr([查找起始位置],字符串1,字符串2)
从字符串1中查找字符串2并显示起始位置
Instr([4],“abcdccefghcde”,“c”)=5
Instr(“abcdccefghcde”,“c”)=3
Instr([4],“abcdccefghcde”,“w”)=0
4.日期和时间函数
Now→显示当前时间
Date→显示当前日期
Time→显示当前时刻
5.随即数函数
Rnd:
产生一个[0,1)之间随机单精度数
[a,b]间随机整数公式
Int((b-a+1)*Rnd+a)
e.g:
Int((99-10+1)*Rnd+10)随机产生一个两位正整数
[a,b)间随机整数公式
Int((b-a)*Rnd+a)
0~1000随机整数Int((1000-0)*Rnd+0)
Randomize:
使每次随机数序列不同
第四部分
Inputbox、Msgbox、Format函数
一、Inputbox输入框
格式
x=Inputbox(“提示信息”,“标题”,“输入框默认值”)
Inputbox默认信息为字符型
例:
x=Inputbox(“请你输入x值”)
y=Inputbox(“请你输入y值”)
Printx+y
当x为123,y为456时,输出结果为123456
x=Val(Inputbox(“请你输入x值”))
y=Val(Inputbox(“请你输入y值”))
Printx+y
当x为123,y为456时,输出结果为579
二、msgbox函数形式与过程形式
1.过程形式
Msgbox“提示信息”,按钮类型+图表类型,“标题信息”[,help,comtext]
2.函数形式
变量名=Msgbox“提示信息”,按钮类型+图表类型,“标题信息”[,help,comtext]
按钮类型
图标类型
0
确定
16
X
1
确定,取消
32
?
2
终止,重试,忽略
48
!
三角
3
是,否,取消
64
!
4
是,否
5
重试,取消
Msgbox返回值为1~7
三、格式输出(format)函数
Format函数用于把数值和日期型的数据按指定的格式输出
格式:
Format(字符,“格式”)
Printformat(12345,“##########”)=》12345
Printformat(12345,“0000000000”)=》12345
Printformat(123456.7,“####000.00”)=》123456.70
Printformat(123456.7,“00.00%”)=》12.34%
Printformat(123456.7,“$##,000.00”)=》$12,345.67
Printformat(123456.7,“-###,000.00”=》-123456.7
Printformat(123456.7,“0.00E+00”)=》1.23E+05
Printfotmat(0.1234567,“0.00E-00”)=》1.23E-01
第五部分
程序设计的基本结构
一、结构化程序设计的三种基本结构
1.顺序结构
2.分支结构(选择结构)
3.循环结构
二、顺序结构
1.赋值语句:
=
2.结束语句:
end
3.注释语句:
’和rem
’和rem都可注释整条语句
’还可在语句后解释说明,但ram不可以
三、选择结构
1.单分支条件语句
(1)单行形式
If条件表达式Then语句块
(2)块形式
If条件表达式Then
语句块
EndIF
例1:
判断x是否为偶数
单行形式Ifxmod2=0ThenPrint“是偶数”
块形式Ifxmod2=0Then
Print“是偶数”
EndIf
例2:
x=Val(Inputbox(“请输入x”))
Ifx<0Thenx=x+2
x=x+10
Printx
当x<0时输出x+12当x≥0时输出x+10
2.双分支条件语句
(1)单行形式
If条件语句Then语句1else语句2
(2)块形式
If条件语句Then
语句1
Else
语句2
EndIf
例:
Ifimod2=0Then
Print“i是偶数”
Else
Print“i是奇数”
EndIf
(3)IIF函数
格式
IIF(条件,“是取值”,非取值)
例:
同上例程序
result=IIF(imod2=0,“i是偶数”,“i是奇数”)
Printresult
3.多分枝条件语句
(1)If语句的嵌套
(2)If...Then...Elseif...EndIf
注:
Elseif不是ElseIF
例:
10分制等级题
score=Val(Inputbox(“请输入学生成绩”,“输入框”))
例:
score=Val(Inputbox(“成绩”,“输入框”))
SelectCasescore
CaseIs>90
Print“优”
CaseIs>80
Print“良”
CaseIs>70
Print“中”
CaseIs>60
Print“及格”
CaseElse
Print“不及格”
EndSelect
注:
SelectCase语句运行时,依次判断语句,成立后则跳出,不成立则向下判断
Ifscore>90Then
Print“优”
Elseifscore>80Then
Print“良”
Elseifscore>70Then
Print“中”
Elseifscore>60Then
Print“及格”
Else
Print“不及格”
EndIf
(3)SelectCase语句
格式
SelectCase测试表达式
Case表达式1
语句块1
Case表达式2
语句块2
Case表达式n
语句块n
CaseElse
语句块n+1
EndSelect
Case后表达式形式
(1)枚举型,中间用逗号隔开
例:
Case50,100,200
(2)使用To关键字
例:
Case1To50Case“A”To“Z”(均为闭区间)
(3)使用Is关键字
例:
CaseIs>=80
CaseIs<80
(4)以上三种的组合
例:
Case6,8To9,Is>12
四、单选控件、框架、复选按钮
1.单选按钮(Option)
属性:
Caption同前
Value布尔型属性,有True和False选项
2.复选按钮(Check)
属性:
Caption同前
Value数值型属性,有0(未选中),1(选中),2(默认选中,灰色)
3.框架(Frame)
属性:
Caption
框架控件可作空间的容器,框架主要用来把窗体上的空间进行分组或使窗体在外观上更有条理
第六部分
程序设计的基本结构——循环结构
1.For循环
格式
For循环变量=初值To终值Step步长
循环体
(ExitFor[中途退出循环])
Next循环变量
ExitFor语句
(1)提前终止For循环
(2)一般与If语句连用
例1:
Fori=1To5Step2
Print“*”
Nexti
Print
结果为:
*
*
*
7
例2:
统计1~100内被5和7整除的数及其个数
s=0
n=0
Fori=1To100(step1)
Ifimod5=0andimod7=0Then
s=s+i
n=n+1
EndIf
Nexti
Print“和”:
s
Print“个数”:
n
例3:
求n的阶乘
n=Val(Inputbox(“请输入要阶乘的数”))
s=1
Fori=1Tonstep1
s=s*n
Nexti
Prints
例4:
求1!
+2!
+3!
+4!
+5!
m=0
Forn=1To5step1
s=1
Fori=1Ton
s=s*n
Nexti
m=m+s
Nextn
Printm
素数问题
判断n是否为素数
n=Val(Inputbox(“请输入你要判断的数”))
Fori=2Ton-1
Ifnmodi=0ThenExitFor
Nexti
Ifi>=n–1Then
Print“该数是素数”
Else
Print“该数不是素数”
EndIf
2.Do~Loop循环
格式一:
DoWhile/Until<条件>
循环体
Loop
该格式先进行判断后执行程序,如判断不成立循环体可能一次也不运行
格式二:
Do
循环体
LoopWhile/Until<条件>
该格式先执行程序后进行判断,循环体至少执行一次
注:
While当条件为真时执行循环体
Until当条件为假时执行循环体
格式二:
s=0
i=1
Do
s=s+i
i=i+1
Loopuntili>100
(whilei<=100)
Prints
例:
求1~100
格式一:
s=0
i=1
Dowhilei<=100
(untili>100)
s=s+i
i=i+1
Loop
PrintS
3.while~wend循环语句
while条件表达式
语句块
Wend
注:
该语句无提前终止语句
六、循环的嵌套
1.循环嵌套的规则
(1)嵌套的层数不限
(2)内层控制结构完全位于外层的一个语块中
(3)两层循环中不得用相同的变量名
(4)为分清层次,内层的控制结构应该向右缩进
2.循环嵌套的执行流程
(1)外层循环执行一次,内层循环从头至尾循环一遍
(2)输出行与列形式的图形或数据时,外层循环控制行,内层循环控制列
第七部分
数组
一、数组定义
数组是变量的扩展,一个数组可以存储多个值,通过数组名和下标对这些值进行存取,即数组名称相同但下标不同的数据的集合
二、数组定义格式
一维数组(默认下标从0开始)
Dim数组名(下标上界)as变量类型
二维数组
Dim数组名(下标上界,下标上界)as变量类型
1.一维数组指定下标界限
(1)Dima(mton)as变量类型
m为下标下界,n为下标上界,m、n必须为整型常量
(2)只指定下标上界,由optionbase语句指定下界(0或1)
optionbase在通用声明段中使用,其值为0或1
2.元素个数
一维数组元素个数
个数=上界-下界+1
一个数组至少有一个元素
3.数组必须先定义再使用
三、数组元素赋初值方法
(1)For与inputbox结合
(2)For与rnd函数结合
(3)For与简单数学表达式结合
(4)For与控件属性结合
(5)利用array函数(只用于一维数组)
四、数组测试函数
LBound→返回数组下界
Ubound→返回数组上界
格式:
Lbound(数组名)和Ubound(数组名)
Array函数赋值
格式:
数组名=array(项目1,项目2……)
a)Array只适用于一维数组
b)用array赋值的数组必定义为变体类型并不能写数组大小
c)数组默认下界从0开始
d)常用Lbound(数组名)和Ubound(数组名