vb学习笔记vb语言
第一篇:vb学习笔记vb语言
如何入门学习VB语言
一.VB是啥?
VB 是Visual Basic编程言语
编写计算机程序需求运用计算机编程言语。计算机编程言语是人和计算机“对话”的桥梁。就像人类的言语相同,计算机编程言语也有许多。其时较为广泛运用的言语有“C++”、“Pascal”、“Basic”等。在许多的计算机编程言语中,以BASIC言语最为易学易用。
BASIC是英文Beginner’s All purpose Symbolic Instruction Code的缩写,意思为初学者通用符号指令代码,一向都是程序设计入门的首选言语。
二.学VB有啥用?
VB能做许多东西,只需你想去做。
运用程序。数据库程序。只需能想得到的根柢上都能够。可是像操作系统等大型杂乱的编程如今通常都用C来编的。用VB很难做得到。要做程序员,单单只会VB还不可。最许多学点其他的。比方ASP数据库 。NET。这样才做出十分好的东西来
三.如何学好VB
VB是一种很简略上手的言语,归于典型的入门简略,知晓很难。
在如今,VB仍然是世界上运用最广泛的言语.对比适合的范畴是C/S架构的MIS,衍生言语VBScript又是一种十分适合B/S架构MIS等的言语,他的简略和易修改十分适合处理系统需求多变的状况.对数据库的支撑也极好,有MS在后面支撑,你还忧虑啥,不过任何言语都在进化,VB也不破例,LZ能够以如今的根底学习.net架构,习气打开的需求.
若是你是一巧不通的话,我能够介绍一个学习的办法:
1.先看看书,大致的了解了一些根柢的东西,不至于"盲人摸象"
2.从小东西学起(全部在于实习),例如:VB 的三角函数啊.时钟啊.我想在书中是会有的.也能够看看网上的教程...
3.一个很重要的主张:等你现已有所收效了,最佳去上个VB的高档补习班.打个比方:时辰练的最佳,也得有自个来帮你打通经脉啊...
第二篇:VB各章节复习重点笔记总结
VB程序设计的初步知识
1.VB的概述
VB是一种可视化、面向对象和采用事件驱动方式的结构化高级程序设计语言。
特点:▲ 可视化编程
▲ 面向对象程序设计 ▲ 结构化的程序设计语言
▲ 事件驱动编程机制 ▲ 访问数据库
2.VB的程序开发环境
(1)窗口设计器窗口。简称,窗体
(2)工程资源管理器窗口
▲ 工程文件和工程文件组
工程文件的扩展名是vbp,每个工程对应一个工程文件。
▲ 窗体文件
扩展名是frm,每一个窗体对应一个窗体文件,一个应用程序可以有多个窗体。
▲ 标准模块文件
扩展名bas,不属于任何一个窗体。
▲ 类模块文件
(3)属性窗口和工具箱窗口
3.VB常用对象及操作
(1)对象事件的名称Name是由VB预定的,不可以由编程者设定。
可以在运行期间改变窗体的Name属性的值。(?)
(2)控件
4.VB应用程序通常有3类模块组成,即窗体模块、标准模块和类模块。
VB应用程序以解释和编译方式执行。
5.VB中的变量和常量
(1)常量
▲ 文字常量:字符串和数值常量
▲ 符号常量
格式:Const 变量名=表达式
(2)变量
▲ 命名规则:名字只能由字母、数字和下划线组成。
第一个字符必须是英文字母,最后一个字符可以是类型说明符。
▲变量的类型和定义
①类型说明符放在变量名的尾部。 A#b(错)
%:整型 &:长整型 !:单精度型 #:双精度型 $:字符串型
②在定义变量时指定类型。
格式:Declare 变量名 as 类型
Declare 可以是 Dim、Static、Public或Private
(3)变量的作用域
变量分为:局部变量、模块变量和全局变量
① 局部变量
在事件过程或通用过程内定义的变量叫局部变量。
② 模块变量
窗体变量可用于窗体内的所有过程. 当同一个窗体内的不同过程使用相同的变量时,必须定义窗体层变量,在使用窗体层变量前,必须先声明。
③ 全局变量
全局变量只能在标准模块中声明,不能在过程或窗体模块中声明。用Public 声明。
6. VB常用内部函数
⑴ 转换函数
★ 取整函数Int和fix ★ 数值转换函数 ★ 类型转换函数
★ 格式转换函数
⑵数学函数
★ 三角函数
★ 绝对值函数(Abs)
★ 符号函数(Sgn) ★ 平方根函数(Sqr)
★ 指数和对数函数(Exp和Log)
⑶随机数函数
★ 随机数函数(Rnd) ★ Randomize语句
⑷ 时间函数
7. VB字符串处理
★左、中、右部截取 Left(字符串,n)Mid(字符串,n)Right(字符串,n)
★字符串长度测量函数 Len(字符串)
★Strings函数 Strings(n,ASCII码) Strings(n,字符串)
★查找某个字符串函数 InStr(首字符位置,字符串1,字符串2[,n]
★字母大小转换函数 Ucase(字符串) Lcase(字符串)
★插入字符串语句 Mid(字符串,位置)=字符串
★SetFocus语句
8.VB运算符与表达式
(1)算术运算符
★求模运算 Mod求余.
★算术运算符优先级 ^>>&
如:7^2 Mod 5^23=1
(1) 关系运算符和逻辑运算符
(2) 表达式的执行顺序
◆ 关系运算(=,>,<,<>,≦,≧)
◆ 最后进行逻辑运算,顺序为: Not→And→Or→Xor→Eqv
如:表达式: Not a<=c Or 4*c=b^2 And b<>a+c的值是(Flase)a=2,b=3,c=4
9.VB常用标准控件
(1).标签
●Alignment 确认标签中标题放置的位置,可设置0、
1、2,作用分别为标题设置在左、右、中。
●AutoSize 标题自动调整标签的大小,可设置为True和False.
●Borderstyle 设置标签的边框,可设置为0和1,0表示为无边框。
●Enabled 用于确定一个窗体或控件能否对用户产生的事件作出反应。
●BackStyle 设置标签是否覆盖背景,0表示为透明,1表示标签覆盖背景。
●WordWrap 决定标签的标题文本能否自动换行。
●其他:Height、Left、Top、Visible、Width等等。
(2) 文本框
属性:
●MaxLength 设置文本框中输入的最大字符数。
●MultiLine 设置是否允许多行显示。
●Passwordchar 用于口令输入。
●Scrollbars 用来设置文本框中的滚动条。
事件:
◎ Change 事件 当用户输入新信息或把Text属性设置为新值从而改变文本框的属性时,将可触发此事件。
◎ GotFocus事件 当文本框有输入焦点时,键盘上输入的字符都将在文本框中显示出来,只有当一个文本框被激活并且可见性为TRUE是才能收到焦点。
◎ Setfocus 事件 该方法可以把输入的光标(焦点)移到指定的文本框中。
格式: [对象.] Setfocus
(3) 图形控件
图片框和图像框:
▲ CurrentX和CurrentY属性 ▲ Picture属性
▲ Stretch属性 用于自动调整图像框中图形内容的大小。
▲ 区别:① 图片框是“容器”控件,可作为父控件,而图像框不能。
③ 图片框可接受文本和图片,图像框不能。
④ 图像框占用内存少,显示速度快。
⑤ 图片框更灵活,且适用于动态环境。
▲ 运行期间装入图片
格式:[对象.] Picture=LoadPicture(”文件名”)
直线和形状:
△ BorderColor属性
△ Borderstyle
1—实线 2—虚线 3—点线 4—点划线
△ BackStyle 设置标签是否覆盖背景,0表示为透明,1表示标签覆盖背景。
△ Shape 属性
0—矩形 1—正方形 2—椭圆形 3—圆形 4—四角圆化的矩形
△ BorderWidth 指定线宽或界宽
(3) 复选框和单选按钮
Enabled、FontBold、FontItalic、FontName、FontSize、FontUnderline
Value、Alignment、Height、Left、Top、Visible、Width
单选按钮:Value=True,表示选择了该单选按钮.
Value=False, 表示没有选择该单选按钮.
复选框:Value=0,表示没有选择该复选框。
Value=1,表示选择该复选框。
Value=2,表示该复选框被禁用。
(6) 列表框和组合框
列表框方法:AddItem 添加文本内容到列表框中。
Clear 清除列表框中所有内容。
RemoveItem 删除列表框中指定的项目。
组合框(ComboBox):AddItem、Clear、RemoveItem同样适用。
Style是组合框的一个重要属性,其值可取0、
1、2,决定组合框的3个类型。
注意: 属性ListIndex和 ListCout的区别
108(7) 滚动条
属性:
除Enabled、FontBold、FontItalic、FontName、FontSize、FontUnderline
Value、Alignment、Height、Left、Top、Visible、Width外,还有以下属性:
◆ Max和Min
◆ LargeChange和SmallChange
◆ Value 表示滚动框在滚动条的位置。
事件:主要有Scroll和Change.当在滚动条内拖动滚动框时会触发Scroll事件,而改变滚动框的位置时会触发Change事件。
(8) 计时器
可以用Enabled和Name属性,其最重要的是Interval属性,取值范围0~65535.
(9) 框架
(10) 焦点与Tab顺序
★设置焦点
格式: [对象.] Setfocus
★ Tab顺序
Tab顺序是在按Tab键时焦点在控件间移动的顺序。影响Tab顺序的属性是TabIndex。 1.数据的输出方法:
⑴ print方法
与print方法有关的函数:tab(n)函数 【print tab(24); 800】
spc(n)函数 【print “china”; spc(4); ”中国” 】用于跳出n个空格输出
tab函数从第一列开始计数,n是绝对偏移量。spc(n)函数则是从前面的输出内容开始计数,n是相对偏移量。
⑵ 格式输出( )
#:表示数字,不补零
0:表示数字,在数字的前或后补零
.:指定小数点的位置
,:指定千分分隔符的位置 如:print format$ (12345.6,”####,#.##”)12,345.(3)msgbox函数 信息框→ 返回值→标题
2.数据输出方法
(1)inputbox方法
Inputbox函数的返回值默认为字符串。如:a=inputbox(“Enter an integer”)
b= inputbox(“Enter an integer”) text1.text=b+a 如果在输入对话框中输入8和10,则文本框中显示的内容为108
VB的控制结构
循环控制结构
(1)For循环控制结构
使用Exit for 语句,可以在循环变量到达终值前就退出循环。
Do ……loop While
(2)当循环结构
(4)多分支控制结构
While 条件
测试表达式=????→Select case 测
[语句块]
Wend
试表达式
(5)IIf函数
A=IIf(条件,true部分,false部分)
数组与过程
1.默认数组
默认数组就是数据类型为Variant的数组。 Static A(4)即为定义了四个默认数组。
2.动态数组
◆ 用变量作为下标定位的数组时动态数组
◆ 用数值常量或符号常量作为下标定维的数组是静态数组。
动态数组定义分两步:首先在窗体层、标准模块或过程中用DIM或Public声明一个没有下标的数组,然后再过程中在用ReDimd定义。
3. 数组的清除和重定义
Erase 数组名
(3)Do循环结构
Do While……Loop
Erase用于动态数组中,将删除整个数组结构并释放数组所占用的内存,即动态数组以后就不复存在。用于静态数组中只是内容清空,数组依然存在。
4. 数组元素的输入及输出
输入:一般通过For循环和Inputbox函数输出
如: Option base 1
Dim s() as string
Sub Form_Click()
Redim s(4) as string
For i= 1 to 4
Temp$=Inputbox(“Enter Name”)
S(i)= Temp$
Next i
5.控件数组
控件数组是一组相同类型的控件组成,这些控件有一个相同的控件名称,具有相同的属性设置,所有元素的Name属性相同,但Index属性不同。
6.Sub过程
● 通用过程:多个事件过程需要使用同一个程序代码,他可以单独建立,供事件过程或其他过程调用。
● 事件过程:当发生某个事件时,对事件作出响应的程序段。
函数过程的返回值只能有一个。
调用Sub过程:① Call语句调用过程。 如:Call Tryout(a,b)
② 把过程名作为一个语句使用。 如:Try out a,b 去掉call关键字,去掉“实际参数”括号。
End Sub
输出:用Print方法结合For循环实现
Option base 1
Dim s(4,4) as Integer
For i= 1 to 4
For j= 1 to 4
Print s(i,j); “ ” ;
Next j
Next i
7.通用sub过程和事件过程 ★重点★难点★
事件过程是一种特殊的sub过程,他附加在窗体和控件上。窗体的事件过程不能由用户任意定义,而是由系统指定。通常是在事件过程中调用通用过程,同时事件过程也可以被其他过程调用。
通用过程可以放在标准模块中,也可以放在窗体模块中,而事件过程只能放在窗体模块中,不同模块中的过程可以互相调用。
8.Function过程 ★重点★难点★
Sub过程不直接返回值,可以作为单独的基本语句使用,而Function过程要返回一个值,通常出现在表达式中。
键盘与鼠标事件
1.键盘事件
⑴KeyPress事件
当压下键盘上的某个键时,将发生KeyPress事件。该事件可以用于各控件。比如用在文本框上的格式:Private Sub Text- KeyPress(KeyAscii as integer)
KeyPress事件带有一个参数,参数有两种形式,第一种形式:Index As Integer,只用在控件数组。第二种形式是:KeyAscii As integer,用于单个控件。
KeyPress事件用于识别按键的Ascii码,捕捉击键动作,KeyAscii参数不能省略。
控件的键盘事件优先于窗体的键盘事件
⑵KeyDown和KeyUP事件
KeyDown和KeyUP事件返回的是键盘的直接状态。 KeyPress事件返回的是Ascii码。当按键“A”时,KeyDown事件所得到的Keycode码与键“a”的相同。
2.鼠标事件 第10章 键盘与鼠标事件
本章主要考查键盘事件与鼠标事件,包括KeyPress事件、KeyDown和KeyUp事件、鼠标事件、鼠标光标的形状与拖放等知识点。通过对历年试卷内容的分析,本章考核内容约占6%,属于一般考查对象。
10.1 键盘事件
使用键盘事件过程,可以处理当按下或释放键盘上某个键时所执行的操作。
10.1.1 考点1:KeyPress事件
当压下键盘上的某个键时,将发生KeyPress事件。该事件可用于窗体、复选框、组合框、命令按钮、列表框、图片框、文本框、滚动条及与文件有关的控件。严格地说,当按下某个键时,所触发的是拥有输入焦点(Focus)的那个控件的KeyPress事件。在某一时刻,输入焦点只能位于某一个控件上,如果窗体上没有活动的或可见的控件,则输入焦点位于窗体上。当一个控件或窗体拥有输入焦点时,该控件或窗体将接收从键盘上输入的信息。例如,假定一个文本框拥有输入焦点,则从键盘上输入的任何字符都将在该文本框中回显。
在窗体上画一个控件(指前面所讲的可以发生KeyPress事件的控件),比如文本框,并双击该控件,进入程序代码窗口后,从“过程”框中选取KeyPress,即可定义KeyPress事件过程。一般格式如下:
Private Sub Text1 _ KeyPress(KeyAscii As Integer)
……
End Sub
KeyPress事件带有一个参数,这个参数有两种形式,第一种形式是Index As Integer,只用于控件数组;第二种形式是KeyAscii As Integer,用于单个控件。上面列出的是第二种形式。KeyPress事件用来识别按键的ASCII码。参数KeyAscii是一个预定义的变量,执行KeyPress事件过程时,KeyAscii是所按键的ASCII码。
说明:
利用KeyPress事件可以对输入的值进行限制;
利用KeyPress事件可以捕捉击键动作;
在KeyPress过程中可以修改KeyAscii变量的值。如果进行了修改,Visual Basic控件中输入修改后的字符,而不是用户输入的字符。
例10.1.1 以下关于KeyPress事件过程参数KeyAscii的叙述中,正确的是( )。[2005年9月 填空第29题]
A.KeyAscii参数是所按键的ASCII码
B.KeyAscii参数的数据类型为字符串
C.KeyAscii参数可以省略 D.KeyAscii参数是所按键上标注的字符
解析:KeyPress事件带有一个参数,这个参数有两种形式。第一种形式是Index As Integer,只用于控件数组;第二种形式是KeyAscii As Integer,用于单个控件。参数KeyAscii是一个预定义的变量,执行KeyPress事件过程时,KeyAscii是所按键的ASCII码,并且该参数不能省略。
答案:A
小技巧:在默认情况下,控件的键盘事件优先于窗体的键盘事件。因此在发生键盘事件时,总是先激活控件的键盘事件。如果希望窗体先接收键盘事件,则必须把窗体的KeyPreview属性设置为True,否则不能激活窗体的键盘事件。
10.1.2 考点2:KeyDown和KeyUp事件
与KeyPress事件不同,KeyPress并不反映键盘的直接状态,而KeyDown和KeyUp事件返回的是键盘的直接状态。换言之,KeyDown和KeyUp事件返回的是“键”,而KeyPress事件返回的是“字符”的ASCII码。例如,当按字母键“A”时,KeyDown所得到的KeyCode码(KeyDown事件的参数)与字母键“a”是相同的,而对KeyPress来说,所得到的ASCII码不一样。
KeyDown和KeyUp事件的参数也有两种形式,其中Index As Integer只用于控件数组,而KeyCode As Integer,Shift As Integer用于单个控件。
说明:
参数KeyCode是按键实际的ASCII码。该码以“键”为准,而不是以“字符”为准。也就是说,大写字母与小写字母使用同一个键,它们的KeyCode相同(使用大写字母的ASCII码);
转换键,指的是三个转换键的状态,包括Shift、Ctrl和Alt,这三个键分别以二进制形式表示,每个键有三位,Shift键为001,Ctrl键为010,Alt键为100;
KeyDown是当一个键被按下时所产生的事件,而KeyUp是松开被压下的键时所产生的事件。
例10.1.2 在窗体上画1个文本框,其名称为Text1,然后编写如下过程:
Private Sub Text1_KeyDown (KeyCode As Integer ,Shift As Integer)
Print Chr(KeyCode)
End Sub
Private Sub Text1_KeyUp(KeyCode As Integer,Shift As Integer)
Print Chr(KeyCode+2)
End Sub
程序运行后,把焦点移到文本框中,此时如果敲击“A”键,则输出结果为( )。[2006年4月 选择第29题]
A.A B.A C.A D.A
A B C D
解析:敲击“A”键的动作,首先是按下该键触发Text1_KeyDown事件,通过Print Chr(KeyCode)输出“A”;然后是松开被按下的“A”键,此时触发Text1_KeyUp事件,通过Print Chr(KeyCode+2)输出“C”。
答案:C
警钟长鸣:在键盘上按下一个键总是会触发KeyDown事件、KeyUp事件和KeyPress事件。
例10.1.3 在窗体上画1个命令按钮和1个文本框,其名称分别为Command1和Text1,然后编写如下代码:
Dim SaveAll As String
Private Sub Command1_Click()
SaveAll = SaveAll +Chr(KeyAscii)
Text1.Text=Left(UCase(SaveAll),4)
End Sub
End Sub
程序运行后,在文本框中输入abcdefg,单击命令按钮,则文本框中显示的内容是____。[2006年4月 填空第9题]
解析:Text1_KeyPress过程将用户在文本框中所输入的内容保存到变量SaveAll中,本例输入“abcdefg”,则SaveAll=“abcdefg”;Left(UCase(SaveAll),4)函数即为对“abcdefg”转换为大写后取前四个字母,即“ABCD”。
答案:ABCD
小技巧:利用逻辑运算符And可以判断是否按下了某个转换键,可以在事件过程中通过判断是否按下了某个或某几个键来执行指定的操作。
Private Sub Text1_KeyPress(KeyAscii As Integer)
可视化程序设计
1.当窗体为活动窗体时,可以使用“工具”菜单中的“菜单编辑器”打开菜单编辑器。
2.弹出式菜单:建立弹出式菜单首先用菜单编辑器建立菜单,然后用PopupMenu方法弹出显示。
各级菜单中的所有菜单项的名称必须唯一。
3.通用对话框: 对话框的类型可以通过Action属性设置,也可以用相应的方法设置。可以通过DialogTitle属性设置有实际意义的标题。
通用对话框,Action=1 打开文件; =2 保存文件
方法:showopen;showsave
4.文件对话框:
格式:【窗体】对话框名,Fliter=描述符1|过滤器1| 描述符2|过滤器2|…
FliterIndex 用来指定默认的过滤器。
5.多重窗体程序设计
Show方法:用来将指定的窗体装入内存并显示该窗体。
6.VB工程中,可以作为启动对象的程序是Sub main 过程或任何窗体。
一个工程中可以包括多个窗体文件。
数据文件
1基本文件操作语句与函数
⑴ 打开文件 ★重点★难点★
格式:Open文件名【for 方式】 as #文件号
如果省略【for 方式】,则打开文件的存取方式是随机存取方式。
方式指文件的输出方式,可以是Output(顺序输出)以写的方式打开、 input(顺序输入)、append(添加)。
使用open语句打开文件时,如果为输入input打开的文件不存在,则产生“文件未找到”的错误;如果为Output(顺序输出) 、append(添加)访问方式打开的文件不存在,则建立相应的文件。
(2)关闭文件
(3)EOF函数
用来测试文件的结束状态。利用EOF函数,可以避免在文件输入时出现“输入超出尾”错误。 DO While Not EOF
2.顺序文件与随机文件
⑴ 顺序文件写操作
Print #文件号,表达式
Write #文件号, 表达式
(3)随机文件的打开与读写操作
随机文件的记录是定长记录。在用open语言打开文件时必须指定记录的长度。
打开随机文件: Open”文件名” for random As #文件号 对文件的操作既可以读也可以写。
第12章 数 据 文 件
本章主要考查Visual Basic中的数据文件操作,包括Visual Basic文件概述、基本文件操作语句与函数、顺序文件与随机文件和文件系统控件。通过对历年试卷内容的分析,本章考核内容约占8%,属于一般考查对象。
12.1 Visual Basic文件概述
12.1.1 考点1:文件概述
1.文件概念
所谓“文件”,是指记录在外部介质上的数据的集合。
2.在程序设计中使用文件的原因
文件是使一个程序可以对不同的输入数据进行加工处理、产生相应输出结果的常用手段。
(2)顺序文件读操作
Input #文件号,变量表
使用文件可以方便用户,提高上机效率;
使用文件可以不受内存大小的限制。
3.文件结构
为了有效地存取数据,数据必须以某种特定的方式存放,这种特定的方式称为文件结构。Visual Basic文件由记录组成,记录由字段组成,字段由字符组成。
(1)字符
字符是构成文件的最基本单位。字符可以是数字、字母、特殊符号或单一字节。Visual Basic支持双字节字符,当计算字符串长度时,一个西文字符和一个汉字都可作为一个字符计算,但它们所占的空间是不一样的。例如:字符串“系统分析员协会顾问团CSAI”的长度为14个字符,而所占的存储空间为24个字节。
(2)字段
字段也称为域。字段由若干个字符组成,用来表示一项数据。
(3)记录
记录由一组相关的字段组成。
(4)文件
文件由记录构成,一个文件含有一个以上的记录。
4.文件种类
根据不同的分类标准,文件可分为不同的类型。
(1)根据数据性质划分
程序文件:存放的是可以由计算机执行的程序,包括源文件和可执行文件。
数据文件:存放普通的数据,这类数据必须通过程序来存取和管理。
(2)根据数据的存取方式和结构划分
顺序文件:文件中的记录一个接一个地存放。顺序文件的组织比较简单,但维护困难。主要优点是占空间少,容易使用。
随机存取文件:又称直接存取文件,每个记录的长度是固定的,根据记录号进行读写操作。优点是数据的存取灵活、方便,速度较快,容易修改。缺点是占空间较大,数据组织较复杂。
(3)根据数据的编码方式划分
ASCII文件:又称文本文件,它以ASCII方式保存文件。可以用字处理软件建立和修改。
二进制文件:以二进制方式保存的文件。不能用普通的字处理软件编辑,占空间较小。
例12.1.1 以下文件扩展名中,不属于程序文件的是( )。
A..exe B..frm C..mdb D..vbp
解析:.exe文件为可执行文件;.frm文件为Visual Basic的窗体文件;.mdb文件为Access数据库文件;.vbp文件为Visual Basic的工程文件。
答案:C
第二章 数据的输出与输入
1.Print方法的对象
2.MsgBox函数和InputBox函数中各参数的含义
格式:InputBox(prompt,title,default)
格式:MsgBox(msg,type,title)
9章 数组与过程
本章主要考查Visual Basic中的数组与过程,主要包括:数组基本概念、数组基本操作、控件数组、Sub过程、Function过程、过程中的参数、局部内存分配和Shell函数。通过对历年试卷内容的解析,本章考核内容约占18%,属于重点考查对象,但将保持下降趋势。
9.1 数组基本概念
9.1.1 考点1:数组的定义
数组是有序的数据的集合。在Visual Basic中,一个数组中的元素可以是相同类型的数据,也可以是不同类型的数据。在Visual Basic中,可以有两种格式定义数组:
1.第一种格式
(1)一维数组
一维数组的定义一般格式如下:
Dim 数组名(下标上界) As 类型名称
例如:Dim score (10) As Integer
该语句定义了一个一维数组,名字为score,类型为Integer,共6个元素。
(2)二维数组
二维数组的定义一般格式如下:
Dim 数组名(第一维下标上界,第二维下标上界) As 类型名称
例如:Dim stuScore (10,2) As Integer
该语句定义了一个二维数组,名字为stuScore,类型为Integer,共11X3=33个元素。
2.第二种格式
(1)定义数组
在定义数组时,指定数组下标的上界和下界。语句一般格式如下:
Dim 数组名([下界 To] 上界[,[下界 To] 上界]……) As 类型名称
例如:Dim score(1 To 5)
该语句定义了一个一维数组,下界为1,上界为5,共5个元素。
第二种格式实际上包含了第一种格式,只要省略“下界To”,即变为第一种格式。
(2)语句说明
“数组名”与简单变量相同,可以是任何合法的Visual Basic变量名,在同一过程中,数组名不能与变量名同名;
数组必须先定义后使用,并且每一维的元素个数必须是常数,不能是变量或表达式;
使用Dim语句定义数组时,数值数组中的全部元素初始化为0,字符串数组中的全部元素初始化为空字符串;
一般情况下,下标的下界默认为0,可以使用Option Base n(n只能为或1)改变下标的默认为1;使用LBound和UBound函数可以获得数组的上、下界值;
如果下标值从0开始,则数组元素的个数为最大下标值加1,如果下标值从1开始,则数组元素的个数与最大下标值相等。
3.定义数组的保留字
在Visual Basic中,定义数组时可使用4个保留字,以定义不同范围内的数组:
Dim:定义窗体模式或标准模块数组,也可用在过程中;
ReDim:用在过程中;
Static:用在过程中;
Public:用在标准模块中,定义全局数组。
例9.1.1 在窗体上画1个命令按钮,其名称为Command1,然后编写如下事件过程:[2006年4月 填空第7-8题]
Private Sub Command1_Click()
Dim arr (1 To 100) As Integer
For I = 1 To 100
arr(i)=Int(Rnd *1000)
Next i
Max = arr(1)
Min = arr(1)
For i= 1 To 100
If 【7】 Then
Max = arr(i)
End If
If 【8】 Then
Min =arr(i)
End If
Next i
Print "Max =";Max, "Min=";Min
End Sub
程序运行后,单击命令按钮,将产生100个1000以内的随机整数,放入数组arr中,然后查找并输出这100个数中的最大值Max和最小值Min,请填空。
解析:由条件判断可以得知,在【7】处的意思是将最大值Max中的数与arr(i)中的数相比较,【8】处的意思是将最小值Min中的数与arr(i)中的数相比较。
答案:【7】Maxarr(i)
9.1.2 考点2:默认数组
所谓默认数组,就是数据类型为Variant(默认)的数组。在一般情况下,定义数组应指明其类型。
例如:
Static Elec(1 To 100)As Integer
该语句定义了一个数组Elec,该数组的类型为整型,它有100个元素,每个元素都是一个整数。但如果使用语句:
Static Elec(1 To 100)
则定义的数组是默认数组,没有指定类型,则类型默认为Variant,该语句等价于:
Static Elec(1 To 100) As Variant
对于默认数组来说,同一个数组中可以存放各种不同的数据。因此,默认数组可以说是一种“混合数组”,这也就是默认数组的意义所在。
例9.1.2 阅读下面程序并填空。
Sub Form_Click()
【1】
Defau(1)=100
Defau(2)=234.56
Defau(3)= "CSAI"
Defau(4)= "20" & Now
第11章 可视化程序设计
本章主要考查可视化程序设计,包括菜单程序设计、对话框程序设计、多重窗体程序设计、Visual Basic工程结构与执行控制等知识点。通过对历年试卷内容的分析,本章考核内容约占6%,属于一般考查对象,下次考试将保持上升趋势。
11.1 菜单程序设计
For i=1 To 4
Print "Defau(";I; ")="; Defau(i)
Next i
End Sub
答案:【1】Static Defau(4)
菜单的基本作用有两个,一是提供人机对话的界面,以便让使用者选择应用系统的各种功能;二是管理应用系统,控制各种功能模块的运行。
在实际应用中,菜单可分为两种基本类型,即下拉式菜单和弹出式菜单。
11.1.1 考点1:下拉式菜单
下拉式菜单是一种典型的窗口式菜单。在下拉式菜单系统中,一般有一个主菜单,其中包括若干选择项,主菜单的每一项都可以“下拉”出下一级菜单供用户选择或输入信息。操作完毕后菜单从屏幕上消失,并恢复原来的屏幕状态。
1.菜单编辑器
Visual Basic中的菜单通过菜单编辑器,即菜单设计窗口建立。可以通过以下4种方式进入菜单编辑器:
执行“工具”菜单中的“菜单编辑器”命令;
使用热键Ctrl+E;
单击工具栏中的“菜单编辑器”按钮;
在要建立菜单的窗体上单击鼠标右键,将弹出一个菜单,然后单击“菜单编辑器”命令。
菜单编辑器窗口分为三个部分:即数据区、编辑区和菜单项显示区。
(1)数据区
数据区用来输入或修改菜单项、设置属性。在数据区中,必须提供菜单项的“标题”和“名称”属性,“有效”属性和“可见”属性一般默认为True,只有在必要时才设置其他属性。在设置“标题”属性时,如果输入一个减号(—),则可在菜单中加入一条分隔线;如果在菜单“标题”中包含“&”,则可将该符号后的字母作为访问键(通过ALT加该键打开该菜单)。
(2)编辑区
编辑区用来对输入的菜单项进行简单的编辑。
(3)菜单项显示区
菜单项显示区用来显示所输入的菜单项。菜单在数据区输入,在编辑区进行位置调整,在菜单项显示区显示。
2.菜单项的控制
(1)有效性控制
菜单中的某些菜单项应能根据执行条件的不同进行动态变化,即当条件满足时可以执行,否则不能执行。
菜单项的“有效”属性,菜单项的有效性就是通过该属性来控制的。实际上,只要把一个菜单项的“有效”属性设置为False,就可以使其失效,运行后该菜单项变为灰色;为了使一个失效的菜单项变为有效,只要把它的“有效”属性重新设置为True即可实现。
(2)菜单项标记
所谓菜单项标记,就是在菜单项前加上一个“√”。它有两个作用:一是可以明显地表示当前某个(或某些)命令状态是“On”或“Off”二是可以表示当前选择的是哪个菜单项。菜单项标记通过菜单设计窗口中的“复选”属性设置,当该属性为True时,相应的菜单项前有“√”标记;如果该属性为False,则相应的菜单项前没有“√”标记。
(3)键盘选择
用键盘选取菜单通常有两种方法,即热键和访问键(Access Key)。
3.菜单项的增减
菜单项的增减通过控件数组来实现。一个控件数组含有若干个控件,这些控件的名称相同,所使用的事件过程相同,但其中的每个元素可以有自己的属性。控件数组和普通数组一样,可通过下标(Index)访问控件数组中的元素。控件数组可以在设计阶段建立,也可以在运行时建立。
例11.1.1 假定有一个菜单项,名为MenuItem,为了在运行时该菜单项失效(变灰),应使用的语句是( )
A.MenuItem.Enabled= False
B.MenuItem.Enabled= True
C.MenuItem.Visible= True
D.MenuItem.Visible= False
解析:Enabled属性设置菜单是否可用;Visible属性设置菜单是否可见。菜单项标记通常是动态地加上或取消的,因此应在程序代码中根据执行情况动态设置。
答案:A
重要提示:只有当某个窗体为活动窗体时,才能用上面介绍的四种方法打开菜单编辑器窗口。
11.1.2 考点2:弹出式菜单
建立弹出式菜单通常分两步进行:首先用菜单编辑器建立菜单,然后用PopupMenu方法弹出显示。第一步的操作与前面介绍的基本相同,惟一的区别是必须把菜单名(即主菜单项)的“可见”属性设置为False(子菜单项不要设置为False)。PopupMenu方法用来显示弹出式菜单,其一般格式如下:
对象.PopupMenu菜单名,Flags,X,Y,BoldCommand
说明:
当省略“对象”时,弹出式菜单只能在当前窗体中显示。如果需要弹出式菜单在其他窗体中显示,则必须加上窗体名;
Flags的两组参数可以单独使用,也可以联合使用。当联合使用时,每组中取一个值,二者相加;如果使用符号常量,则两个值用Or连接;
弹出式菜单的位置由X、Y和Flags参数共同指定。
例11.1.2 在菜单编辑器中建立一个名称为Menu( )的菜单项,将其“可见”属性设置为False,并建立其若干子菜单,然后编写如下过程:
Private Sub Form_MouseDown (Button As Integer ,Shift As Integer ,X As Single, Y As Single)
If Button = 1 Then
PopupMenu Menu()
End If
End Sub
则以下叙述中错误的是( )[2006年4月 选择第32题]
A.该过程的作用是弹出一个菜单
B.单击鼠标右键时弹出菜单
C.Menu()是在菜单编辑器中定义的弹出菜单的名称
D.参数X、Y指明鼠标当前位置的坐标
解析:通常把PopupMenu方法放在MouseDown事件中,该事件响应所有的鼠标单击操作,用Button参数控制左右键选择。Button=1为单击鼠标左键时弹出菜单,Button=2为单击鼠标右键时弹出菜单。
答案:B
第九章.常用控件
认清事件触发的对象名
列表框
List属性——是一个字符数组,存放列表框的项。 ListIndex属性——选中的列表项序号。
ListCount属性——列表框中项目的数量。 Text属性——被选中列表项的文本内容。
Selected属性——是一个逻辑数组,表示对应的项在程序运行期间是否被选中。
第三章 VB程序设计语句
1. For循环
For <循环变量>=<初值> to <终值>[step 步长]
<循环体>
[Exit For]
Next <循环变量>
1) 多重循环
Do循环
格式一:Do While <条件> <语句块> Loop
格式二:Do Until <条件> <语句块> Loop
格式三:Do <语句块> Loop While <条件>
格式四:Do <语句块> Loop Until <条件>
2) 二重循环
1.典型案例:求100以内的素数。2.取矩阵对角线上的元素。3.打印“*”型图。
3) 程序范例:
Const n=5,m=4
Dim a(m,n)
Private Sub Command1_Click()
K=1
For i=1 To m
For j=1 To n
a(i,j)=k
k=k+1
Next j
Next i
End Sub
Private Sub Command2_Click()
End If
Summ=0
Next j
For i=1 To m
Next i
For j=1 To n
Print summ
If i=1 Or i=m Then
End Sub
Summ=summ+a(i,j)
Else
If j=I Or j=n Then
Summ=summ+a(i,j)
End If
过程Command1_Click()的作用是二维数组a 中存放1个 m行n列的矩阵;过程Command2_Click()的作用是
A) 计算矩阵外围一圈元素的累加和
B) 计算矩阵除外一圈以外的所有元素的累加和
C) 计算矩阵第1列和最后一列元素的累加和
D) 计算矩阵第1行和最后一行元素的累加和
VB中状态栏(StatusBar)和工具栏(ToolBar)经典实例分析
1. 状态栏的作用与组成
StatusBar 控件由 Panel(窗格) 对象组成,最多能被分成 16 个 Panel 对象,每一个 Panel 对象能包含文本和/或图片。控制个别窗格的外观属性包括 Width、Alignment(文本和图片的)和 Bevel(斜面)。此外,能使用 Style 属性七个值中的一个自动地显示公共数据,诸如日期、时间和键盘状态等。
2. 创建状态栏
先在窗体上画出一个StatusBar对象,再右击该对象,从快捷菜单中选择“属性”,进入属性页设置窗口,进行下面的设置:
(1) 选择窗格形状
在属性窗口里选择通用标签,在样式列表框里选择多窗格(缺省形式)或单窗格简单文本形式。
(2) 添加或删除状态栏窗格
在属性窗口里选择窗格标签,单击插入窗格按钮添加一个窗格,或单击删除窗格按钮删除一个窗格。
(3) 在单窗格里显示文本
在属性窗口里选择通用标签,在简单文本框里输入想显示在状态栏窗格里的文本。用代码显示的方式是:
StatusBar1.SimpleText = "要显示的内容"
(4) 在多窗格里显示文本或图形
1). 在属性窗口里选择窗格标签,用索引旁的按钮选择窗格序号。
2). 在文本框里输入想显示在状态栏窗格里的文本。用代码显示的方式是:
StatusBar1.Panels(x).Text = "要显示的内容"
3). 如果想加入图形,单击浏览按钮打开一个图形选择对话框,选择想加入的图形,然后单击打开按钮。
(5) 编写代码
如果是一个单窗格状态栏,当用户单击状态栏时,只需用下面的事件过程来响应:
Private Sub StatusBar1_Click()
<要执行的代码>
End Sub
如果是一个多窗格状态栏,就需要鉴别用户单击的是哪一个窗格,可用下面的事件过程来识别用户所单击的窗格:
Private Sub StatusBar1_PanelClick(ByVal Panel As Panel)
Select Case Panel.Index
Case 1
<要执行的代码>
Case 2
<要执行的代码>
……
End Select
End Sub
3.创建工具栏
(1).建立工具栏
1) 在工具箱里单击工具栏图标,拖到窗体的任何位置,Visual Basic自动将ToolBar移到顶部。再右击该对象,从快捷菜单中选择“属性”,进入属性页设置窗口;
2) 选择按钮标签,单击插入按钮,Visual Basic就会在工具栏上显示一个空按钮,重复此步插入多个按钮;
3) 单击确定按钮。如果想把按钮分组,首先插入一个分隔的按钮,再在对话框里将这个按钮的样式属性改为3-Separator。
(2) 为工具栏增加图画
1). 在Visual Basic工具箱里单击ImageList图标,并将它拖到窗体的任何位置(位置不重要,因为它总是不可见的),再右击该对象,从快捷菜单中选择“属性”,进入属性页设置窗口;
2). 选择图象标签,单击插入图片,在选定图形对话框里选择想使用的位图或图标,然后单击打开按钮。为每个想添加图形的工具栏按钮重复此步。
3). 单击确定按钮。
4). 进入ToolBar属性对话框,选择通用标签,在图象列表框里选择刚才添加的ImageList控件。
5). 选择按钮标签,单击紧挨Index框的向左或向右箭头以选择一个按钮序号。出现在工具栏最左边的按钮序号为1。
6). 在Image框里输入一个数,输入为1,则显示刚才ImageList控件里的第一个图形,输入为2,则显示刚才ImageList控件里的第二个图形。
7). 为每个按钮重复第6步, 单击确定按钮,现在Visual Basic就会在工具栏上显示精美的图形了。
(3)为工具栏添加文本信息
在ToolBar属性对话框中选择按钮标签,在标题框里输入想显示在按钮上的文本。
(4)添加ToolTips
ToolTips是一种当点到工具按钮时弹出的小标签。ToolTips很方便,可以告诉那些新手每个按钮是干什么用的。在ToolBar属性对话框中选择按钮标签,在工具提示文本框里输入想作为ToolTip的文本。
(5)编写代码
双击工具栏,以下面的格式输入代码就可以了: Private Sub Toolbar1_ButtonClick(ByVal Button As Button)
Select Case Button.Index
Case 1
<要执行的代码>
Case 2
<要执行的代码>
……
End Select
End Sub VB进程条(ProgressBar)和滑块(Slider)基础教程
1. 进程条
作用:进程条控件用于监视操作完成的进度。
创建:在窗体上画出进程条控件,右击,选择属性,然后进行所需的外观设置。
主要属性:ProgressBar 控件有一个行程和一个当前位置。行程代表该操作的整个持续时间。当前位置则代表应用程序在完成该操作过程时的进度。Max 和 Min 属性设置了行程的界限。Value 属性则指明了在行程范围内的当前位置。
(1) Min属性代表进程条全空时的值,缺省时为0。
(2) Max属性代表进程条全空时的值,缺省时为100。
(3) Value属性代表进程条当前的值(但不出现在属性窗口中),它大于Min属性,小于Max属性。改变Value属性的值将改变进程条的进度显示。
示例:
Private Sub Command1_Click()
If ProgressBar1.Value < ProgressBar1.Max Then
ProgressBar1.Value = ProgressBar1.Value + 5
Else
ProgressBar1.Visible = False „当进程条满了的时候让进程条消失
End If
End Sub 2.滑块
Slider 控件是包含滑块和可选择性刻度标记的窗口,在窗体上画出滑块控件,右击,选择属性,然后进行下列设置:
(1)选择滑块的外观
1)方向属性决定滑块的方位,可以是垂直的或水平的滑块。
2)滑块样式属性决定滑块标记的样子。
3)滑块频率属性规定了沿着滑块的标记的间隔大小,缺省的状态是1,表明每个可能值都出现标记,如果把值设置为3,则每三个可能值出现一个标记。
(2)滑块的主要属性及事件
1)Min,Max属性
Min属性决定滑块最左端或最顶端所代表的值。Max属性决定滑块最右端或最下端所代表的值。
2)LargeChange,SmallChange属性
SmallChange决定在滑块两端的箭头钮上单击时改变的值。LargeChange决定在滑块上方或下方区域单击时改变的值。
3)Value属性
Value属性代表当前滑块所处位置的值,这个值由滑块的相对位置决定。
4)Change事件
当滑块位置发生变化时就引发了Change事件。 图象列表(ImageList)和 图象组合框(ImageCombo)实例讲
解
1.图象列表
ImageList 控件是包含 ListImage 对象的集合,该集合中的每个对象都可以通过其索引或关键字被引用。ImageList 控件不能独立使用,只是作为一个便于向其它控件提供图象的资料中心。
ImageList 控件的作用象图像的储藏室,同时,它需要第二个控件显示所储存的图像。第二个控件可以是任何能显示图像 Picture 对象的控件,也可以是特别设计的、用于绑定 ImageList 控件的 Windows 通用控件之一。这些控件包括ListView、ToolBar、TabStrip、Header、ImageCombo、和 TreeView 控件。为了与这些控件一同使用 ImageList,必须通过一个适当的属性将特定的 ImageList控件绑定到第二个控件。对于 ListView 控件,必须设置其 Icons 和 SmallIcons 属性为 ImageList 控件。对于 TreeView、TabStrip、ImageCombo、和 Toolbar 控件,必须设置 ImageList 属性为 ImageList 控件。
一旦 ImageList 与某个 Windows 通用控件相关联,就可以在过程中用 Index 属性或 Key 属性的值来引用 ListImage 对象。
当与 Windows 通用控件一起使用 ImageList 控件时,在将它绑定到第二个控件之前,按照希望的顺序将全部需要的图像插入到 ImageList。一旦 ImageList 被绑定到第二个控件 ,就不能再删除图像了,并且也不能将图像插入到 ListImages 集合中间。但是可以在集合的末尾添加图像。
2.图象组合框
ImageCombo 控件是标准 Windows 组合框的允许绘图版本。控件列表部分中的每一项都可以有一幅指定的图片。它可以显示一个包含图片的项目列表,每一项可以有自己的图片,也可以对多个列表项使用相同的图片。
除了支持图片之外, ImageCombo 还提供了一个对象和基于集合的列表控件。控件列表部分的每一项是一个不同的 ComboItem 对象,而且列表中的所有项组合起来构成 ComboItems 集合。这就使它容易一项一项地指定诸如标记文本、ToolTip文本、关键字值以及缩进等级等属性。
第三篇:VB语言程序设计-在线作业_C 答案
VB语言程序设计-在线作业_C 用户名:W310201132227最终成绩:100.0 一 单项选择题
1. 当一个工程含有多个窗体时,其中的启动窗体是(
)。
窗体
最后一个添加的窗体 第一个添加的窗体
启动Visual Basic时建立的窗体
本题分值: 5.0 用户得分: 5.0 用户解答: 在“工程属性”对话框中指定的窗体 知识点:
2. 在窗体上面画一个名称为Text1的文本框,然后编写如下的事件过程: Private Sub Text1_KeyPress(KeyAscii As Integer)
...... End Sub
若焦点位于文本框中,则能够触发KeyPress事件的操作是(
)。
按下键盘上的某个键 双击文本框 鼠标滑过文本框 单击鼠标
本题分值: 5.0 用户得分: 5.0
在“工程属性”对话框中指定的用户解答: 按下键盘上的某个键 知识点:
3. 为了装入一个VB应用程序,应当(
)。
只装入窗体文件(.frm) 只装入工程文件(.vbp) 分别装入工程文件、窗体文件和标准模块文件 分别装入工程文件和标准模块文件(.bas)
本题分值: 5.0 用户得分: 5.0 用户解答: 只装入工程文件(.vbp) 知识点:
4. 为了在按下Esc键时执行某个命令按钮的事件过程,需要把该按钮的哪个属性设为True(
)。
Default Value Cancel Enabled
本题分值: 5.0 用户得分: 5.0 用户解答: Cancel 知识点:
5. 用菜单编辑器创建菜单时,如果要在菜单中添加一条分隔线,正确的操作是(
)。
在标题输入框中输入“-”(减号) 在名称输入框中输入“-”(减号) 在名称输入框中输入“_”(下划线) 在标题输入框中输入“_”(下划线)
本题分值: 5.0 用户得分: 5.0 用户解答: 在标题输入框中输入“-”(减号) 知识点:
6. 在显示菜单时,菜单的哪个属性为True时将用灰色显示该菜单项标题(
)。
Visible Checked Caption Enabled
本题分值: 5.0 用户得分: 5.0 用户解答: Enabled 知识点:
7. 为了使标签框控件覆盖背景,应把BackStyle属性设置为(
)。
False True 1 0
本题分值: 5.0 用户得分: 5.0 用户解答: 1 知识点:
8. 使文本框获得焦点的方法是(
)。
SetFocus GotFocus LostFocus Change
本题分值: 5.0 用户得分: 5.0 用户解答: SetFocus 知识点:
9. 在窗体上画两个文本框(Name属性分别为Text1和Text2)和一个命令按钮(Name属性为Command1),然后编写如下两个事件过程:
Private Sub Command1_Click()
a = Text1.Text+Text2.Text Print a
End Sub
Private Sub Form_Load() Text1.Text = "" Text2.Text = ""
End Sub
程序运行后,在Text1和Text2中分别输入123和321,然后单击命令按钮,则输出结果为(
)。
444 321123 123321 132231
本题分值: 5.0 用户得分: 5.0 用户解答: 123321 知识点:
10. 当拖动滚动条中的滚动块时,将触发滚动条的事件是(
)。
Scroll SetFocus Change Move
本题分值: 5.0 用户得分: 5.0 用户解答: Scroll 知识点:
11. 下面不是VB的数据类型的是(
)。
Currency Object Bool Single
本题分值: 5.0 用户得分: 5.0 用户解答: Bool 知识点:
12. 下面的数2.65358979335278E-06写成普通的十进制数是(
)。
0.000000265358979335278 0.0000265358979335278 0.00000265358979335278 0.000265358979335278
本题分值: 5.0 用户得分: 5.0 用户解答: 0.00000265358979335278 知识点:
13. 下面的数1.21576654590569E+19写成普通的十进制数是(
)。
12157665459056900000 1215766545905690000 12157665459056900 121576654590569000
本题分值: 5.0 用户得分: 5.0 用户解答: 12157665459056900000 知识点:
14. 下列可作为VB的变量名的是(
)。
Abs AB∏
3*Delta PrintChar
本题分值: 5.0 用户得分: 5.0 用户解答: PrintChar 知识点:
15. 设a = 2,b = 3,c = 4,d = 5,下列表达式Not a <= c Or 4 * c = b ^ 2 And b <> a + c的值是(
)。
True 1 False -1
本题分值: 5.0 用户得分: 5.0 用户解答: False 知识点:
16. 语句Print 5 * 5 5 / 5的输出结果是(
)。
1 25 5 0
本题分值: 5.0 用户得分: 5.0 用户解答: 25 知识点:
17. 表达式4 + 5 6 * 7 / 8 Mod 9的值是(
)。
5 7 6 4
本题分值: 5.0 用户得分: 5.0 用户解答: 5 知识点:
18. 以下语句Print 3 + 4 5 * 6 / 7 Mod 8的输出结果是(
)。
6 4 3 5
本题分值: 5.0 用户得分: 5.0 用户解答: 4 知识点:
19. 语句Print Sgn(-6 ^ 2) + Int(-6 ^ 2) + Int(6 ^ 2)的输出结果是(
)。
-1 1 -72 -36
本题分值: 5.0 用户得分: 5.0 用户解答: -1 知识点:
20. 以下语句的输出结果是(
)。
a = Sqr(3)
Print Format(a, "$$####.###")
$1732 $$0001.732 $1.732 $$1.732
本题分值: 5.0 用户得分: 5.0 用户解答: $$1.732 知识点:
第四篇:VB指导学习
2005-7-24
VB指导学习
1、if语句的另一种写法:
if num=10 then print num
当then后面(同一行)有执行语句时,if语句不能加end if
如有end if,则then后(同一行)不能有语句
2、两条语句放在同一行时用“:”分割
如:print num:print num+1
3、语句分多行写用“ _”连接,注意“空格&下划线”
如:print num _
+1
4、除法:a/ba
C++:“/”是除法,a、b都是int,则结果是int,如果其中一个是float,则结果float“”是转义字符。
VB:“/”是除法,有小数。“”取整(小数点后舍)
5、case语句用法:
private sub form1_click()
dim a
select case a
case 1to4,7to9,11,13<5
print a
case else
msgbox”不在范围内”
end select
end sub
6、VB中假是”0”,真是”-1”
C++中假是“0”,真是“1”
7、private sub form_click()
for I=2to4 step-1读完完整的一句之后,如发现问题,则跳过此句执行下一句。print I
next
print I本程序只执行此句一次
end sub
8、倒序输出字符串
取字符函数mid(string,2,3)表示从string字符串中第二位开始,一共取三位如:mid(abcdefg,2,3),则结果为 bcd
lift(abcd,2)=ab
right(abcd,2)=cds
例:private sub command1_click()
dim x as integer,str_len as integer
dim str as string
for x=str_len to 1 step –1
text1.text=text1.text + dim(str,x,1)
next
end sub
form1窗体里有两个文本框和一个按钮
9、循环for I=1to5
„„
next (I)(next后最好不要加i)
10、声明变量:dim a,b as integer则a是变体,b是int
dim a as integer,b as integer则a,b都是int
11、webbrowser 网页
添加部件 ms internet controls 控件
private sub form_click()
webbrowser1.navigate app.path & “a心理测试.html”app.path表示当前目录end sub
private sub form1.resize()
wenbrowser1.height=form1.scaleheight-10“-10”可不写
webbrower1.width=form1.scalewidth-10如不加scale,则会覆盖一点边
12、有退出按钮的窗体,点击退出时询问,点击窗体右上角X则不询问,怎么办?Private sub form_unload(canel as integer„„)
If msgbox(”是否退出?”,vbokcancel,”询问”)=vbok=true=false
Cancel=true-取消关闭
End if
End sub
13、”关于”窗体
添加“关于”对话框
14、使用“选项卡”省地方
添加控件“ms tabbed dialog control 6.0”
如添加控件“ms windows common control 6.0”->”tabstrip”也可以作,但不好用。
15、帮助文件 msdn是世界最大的帮助文件,CHM格式的帮助文件
html help workshop
1. 目录 -> 节点&页面 -> 编译
2. new -> project -> ok -> 下一步 -> 保存路径&名称 -> 下一步 -> 勾中 html
files(.htm) -> 点击Add -> 下一步 -> 完成
3. 搜索proj -> 属性 compiler -> 勾中compiler -> ok
4. 作节点 页面 关键字
project(工程) ->contents(目录) ->index(索引) ->ok ->保存节 钥匙增加关键字contents(目录) ->是否创建 ->ok ->保存 ->点左第二个文件夹则属性换成书图标
16、用VB调用帮助文件
设工程属性的“帮助文件名”后,按“f1”弹出帮助
设一个“帮助菜单”,在菜单click事件中加入sendkeys“{F1}”,模拟用户按键盘还可以模拟alt + f4 , 但不可以模拟 control + alt + del (重启),
17、MDI无子窗体时,帮助无作用,调用ADI/ATI
把目录的成app.path ,把此文件拷贝到其它位置仍可使用
18、shell 只能调用.exe文件hh.exe是windows 自带的帮助打开“帮助文件”的exe文件shell”hh.exe 帮助文件的路径及文件名”
19、private sub a_click()
sendkeys”{f1}”
shell”hh.exe d:qiaosl„„.chm”,vbnormal focus
end sub
private sub form_load()
ap.help file=app.path &”„„.chm”
20、1.工程属性设“帮助菜单名”
2.App.helpfile= „„
3.Sendkeys”{f1}”
4.shell(“hh.exe„„”)
1&2作用是:按F1出帮助,便用2好一些,3是模拟按键盘F1,4可完全单独使用,3&4用在按键或菜单。
Api例子
下午
21、设置象素:窗体的lemode属性1-twip->缇,pixel->象素
22、动态生成控件必须用控件组
23、缺省事件是双击控件时自动出现的事件
缺省属性可省略:text1.text=”a”可写成text1=”a”,可省略“.text”
24、cotfouse->事件
25、模式&非模式窗体:
26、参数传递:默认按引用传递,Byval是按值传递
subs(byval x as single,y as single) 则x按值,y按引用,VB中真为-1
27、第十章,error
语法错误:
运行时错误:一般不出错,特定时出错,考虑不周全,如除数为0
逻辑错误:不报错,写的不对,如循环次数不对。
错误处理代码
1. 创建捕获错误代码
2. 处理此错误
3. 继续执行
on error goto 1标号(数字&字母都可以)
exit sub
1:
msgbox(“除数不为0”)
text1.text=””
text1.setfouse
end sub
resume (next/line)回到出错行,或出错行的下一行,或指定位置
on error resume next忽略错误/延迟最好少用,延迟后改不了
F8是单步运行
28、对象 –> err.属性&方法 number(错误编号)
29、dbpath=commondialog.filename
if dbpath=””
end
con.open
else resume
showopen
30、C++复习题:
简单
1. 用户接收一个数,调用一个函数,输出该数的立方
2. 写一个函数min(int a[]),求主程序中传来的数组中最小值
难度适中
3. 民主投票方法选班长,候选人编号A、B、C、D每位同学只能选一人作班长,
输入每张选票的候选人编号A~D,输入0终止,
调用函数process()输出每人得票数及当选人
4. 接收用户输入的数,直到有5个奇数,显示此5个奇数,
调用max()函数显示此5个奇数中最大数
高难度
5. 字符串变量A、B,B是A中的一部分,将B抠出A,再输出
超难度
6. 卖票,车站一共15,每站上(剩下站数)个人,然后剩下每站依次下一个人,问应
设几个座位,卖出多少张票
7. 发牌:按顺序发随机牌(使用随机数)
第五篇:VB学习心得体会
篇一:vb学习的心得体会 vb学习的心得体会 ————刘师桐
这学期选修了vb这门学科,想从学习中对计算机有更深刻的认知,也对我大学中的2级考试奠定基础。那么谈谈这学期的学习中对vb的认知和心得体会。
vb全称为visual basic,是微软公司推出的可视化编程工具msdn之一,是目前世界上使用最广泛的程序开发工具。vb提供的是可视化的开发环境,我们可以象搭积木一样构建出程序的界面,而且vb提供了丰富的控件组,省去了我们自己写代码实现这些效果的麻烦,这样我们就能把更多的精力放在程序功能的实现上,所以vb学起来简单,用起来方便。因此,我学了vb,并有了如下收获:
1.富业余生活。业余时间到处游手好闲的身影不见了,没事我肯定一动不动的坐在电脑面前摆弄vb。是啊,想想以前,真是一无是处,一会找人砍大山,一会找人打游戏,一会就傻傻的坐在小板登上两眼无光,似是厌倦了红尘。现在生活有了寄托,是vb给了我无穷的快乐,让我乐此不疲。
2、多了一门技术。vb是一门计算机编程语言,也算是一项知识含量较高的东西。采用的是可视化程序设计。学习的这段时间,我明白了万事开头难,刚刚开始,遇到些困难没关系,慢慢来。编程是一个不断学习,不断积累的过程,编程的乐趣也正是存在于学习的过程中。 我们每学一点,就赶快把它用到实际的程序中去,自己多学多用多实践,水平才能不断提高,这就是“学以致用”。 多看多练是我独门绝技,一般人我不告诉他:多看------别人的代码,即使看不懂也没关系,可以把这些代码输入到机子里运行,然后根据运行结果去体会程 序的思路和用途。
3、锻炼意志。编程可不是一项轻松的活,尤其是一个人开发制作软件时,那工作量就多了。没有一定的坐功、细心程度及耐性那是绝对做不到的。有时,把程序做完了需要调试运行,但是就是不能达到自已设计的效果和目的,那你得戴上放大镜找啊找啊,也许就是因为一个符号或一个字母,你就得花上个几个小时,半天,甚至更长。越是这样越不要灰心,应该放松心态,一点一滴的去查。只要有一颗永不退缩的心,我相信你一定能找到问题所在,最后一定能见到你开心的笑容,也一定能找到成功者的感觉。 通过这个学期的学习,对了vb这种高级语言有了初步的认知,对一些小的程序有了初步的设计方案,能根据要求设计出想要的程序,锻炼了自己的创造性思维,是培养逻辑思维的好方法,同时我经常看同学设计好的程序代码,包括教材上的例题程序,然后想想别人为什么这么计就能达到效果,我的设计能不能完成更多的功能,这样优秀了自己,帮助了自己,提高了自身水平,同样,也欣赏了别人,对别人是赞美,对自己是帮助,总而言之,这学期的vb课程让我收获了很多,我对下学期的计算机2级考试很有信心!!!篇二:vb学习总结也心得 学习vb两个星期以来, (其实真正时间也不到两个星期吧 平时有空闲就学习了下 在这里是想告诉大家 vb基本操作不难,)第一个串口调试程序通了 能够实现更改波特率,串口号,接收数据实现字符也十六进制显示,在发送文本框输入数据 电机发送将在接收框内显示 记住将rs232的2和3管脚直接接起来
下面是我测试实际过程
大家也可以和我一样练习练习
下面是我的源代码可以供大家参考下也希望高手指点下 (框架就没必要给了) dim baud as string dim text2enbale, asciflag as boolean 停止显示标志 false将不能显示 private sub check2_click() end sub end select end sub case 300 baud = 300 case 600 baud = 600 case 1200 baud = 1200 case 2400 baud = 2400 case 4800 baud = 4800 case 9600 baud = 9600 case 19200 baud = 19200 case 38400 baud = 38400 end select else case 300 baud = 300 case 600 baud = 600 case 1200 baud = 1200 case 2400 baud = 2400 case 4800baud = 4800 case 9600 baud = 9600 case 19200 baud = 19200 case 38400 baud = 38400 end select end if end sub dim s as string dim a() as byte msgbox 串口未打开,请打开串口, 48, 警告 end if redim a(3) a(0) = &hf a(1) = &hfe a(2) = &hdd a(3) = &hcc s = text3.text a = s end if call delay(20) end sub dim idata as variant dim arr() as byte redim arr(intinputlen) 和上面一样 if asciflag = true then for i = 0 to ubound(arr) text2.text = text2.text + chr$(arr(i)) next ielse for i = 0 to ubound(arr) text2.text = text2.text + & arr(i) next i end if end select end sub private sub option1_click() if option1.value = true then asciflag = true end if end sub private sub option2_click() if option2.value = true then asciflag = false end if end sub private sub timer1_timer() label11.caption = time end sub private sub uart_open_click() shape2.backcolor = &hff& uart_open.caption = 关闭串口 else shape2.backcolor = &he0e0e0 uart_open.caption = 打开串口 end if end sub private sub text2_clr_click() text2.text = end sub private sub text2_en_click()text2enable = not text2enbale end sub end end sub private sub form_load() show 没有show后面的设置焦点将失败 错误 text2enbale = true option2.value = true 默认显示是以16进制显示 text3.text = text3.setfocus end sub 至此 一个简单的小工程就完成了,因为我是电子信息工程专业对高级编程还是很菜鸟的,其实这个功能也是我一直想能够自己实现的,因为之前一直以为学习vb 会花好多时间,就像之前一直在学习arm一样半天模不着头脑。所以迟迟不敢接触。估计也好多人和我一样,其实学习开始了 也会发现并不是想象中那样。 2012-7-30 青檐铃风篇三:vb学习心得体会 vb学习心得体会
这学期选修了vb这门学科,想从学习中对计算机有更深刻的认知,也对我大学中的2级考试奠定基础。那么谈谈这学期的学习中对vb的认知和心体会。
通过学习vb我基本学会了编辑一些小程序,掌握了一些基本的知识,得到了以下一些收获: 1.富业余生活。曾经业余时间到处游手好闲的身影不见
了,以前没事我肯定一动不动的坐在电脑面前摆弄电脑。是啊,想想以前,真是一无是处,一会找人砍大山,一会找人打游戏,一会就傻傻的坐在小板登上两眼无光,似是厌倦了红尘。现在有了vb,它给了我无穷的快乐,让我乐此不疲。
2、多了一门技术。vb是一门计算机编程语言,也算是一 项知识含量较高的东西。采用的是可视化程序设计。学习的这段时间,我明白了万事开头难,刚刚开始,遇到些困难没关系,慢慢来。 我们每学一点,就赶快把它用到实际的程序中去,自己多学多用多实践,水平才能不断提高,这就是“学以致用”。 只有这样我才呢学有所成
3、锻炼意志。编程可不是一项轻松的活,尤其是一个人
开发制作软件时,那工作量就多了。没有一定的坐功、细心程度及耐性那是绝对做不到的。有时,把程序做完了需要调试运行,但是就是不能达到自已设计的效果和目的,那你得戴上放大镜找啊找啊,也许就是因为一个符号或一个字母,你就得花上个几个小时,半天,甚至更长。只要有一颗永不退缩的心,我相信你一定能找到问题所在,最后一定能见到你开心的笑容,也一定能找到成功者的感觉。
通过这个学期的学习,对了vb这种高级语言有了初
步的认知,对一些小的程序有了初步的设计方案,能根据要求设计出想要的程序,锻炼了自己的创造性思维,是培养逻辑思维的好方法,同时我经常看同学设计好的程序代码,然后想想别人为什么这么计就能达到效果,我的设计能不能完成更多的功能,这样优秀了自己,帮助了自己,提高了自身水平,同样,也欣赏了别人,对别人是赞美,对自己是帮助,总而言之,这学期的vb课程让我收了很多。