资源描述
1.1.1 VB6新特点 增强了数据访问功能:ADO(ActiveX Data Object)更强大的Internet应用开发功能 新增和加强了一些控件 添加和增强了些向导1.2 VB6的集成开发环境VB6提供给用户的使用界面是一个集成开发环境,它在一个公共的环境中集成 了设计、编辑、编译和调试等功能。1.2.1 启动集成开发环境1.2.2 集成开发环境的组成在VB6的集成开发环境中,通常显示有标题栏、控制菜单图标、窗口操作按钮、菜单栏、工具栏、窗体设计器、工程管理器、属性窗口、工具箱和窗体布局窗口。此外,还可以根据需要打开代码窗口、调色板、对象浏览器、菜单编辑器和三个 用于程序调试的窗口:立即窗口、本地窗口和监视窗口。1.2.3 集成开发环境的菜单1.2.4 集成开发环境的选项设置第2章Visual Basic的窗体和控件http:/ 使用VB的帮助系统联机帮助上下文相关帮助第二章VB6编程初步第二章VB6编程初步2.1 VB编程的基本概念2.1.1 Windows的工作机制Windows系统的工作机制可用三个词来概括:窗口、事件和消息。Windows系统的工作界面是由各种窗口组成的,所谓窗口是指屏幕上的一个矩形 区域。事实上,对话框、文本框、图标、命令按钮和打开的菜单等,都可看作窗 口。Windows系统给每一个窗口指定一个唯一的标识号,即窗口句柄,并通过窗 口句柄来管理所有窗口。Windows系统中的事件可简单地理解成一种操作活动。它可以是由鼠标和键盘的 操作产生,也可以由系统内部产生,甚至是由某个程序运行或窗口操作产生。Windows系统不断地监视着系统中每一个窗口的活动和每一个事件的发生。所谓消息是指事件的信号。每发生一件事件,就引发一条消息。Windows系统处 理这条消息,并把它向系统中程序的各个窗口广播。各个窗口根据其程序中处理 该消息的代码指令作出响应。2.1.2 Windows应用程序的事件驱动运行模式Windows应用程序的运行是事件(可以是用户通过鼠标和键盘操作产生,也可以 是系统内部通过时钟计时产生,甚至也可以是由程序运行或窗口操作触发产生)驱动模式,是通过执行响应不同事件的程序代码进行运行的。因此,在使用VB 提供的事件驱动的程序设计机制编写Windows应用程序时,是对程序中的对象 需要响应的事件分别编写出程序代码。2.1.3 创建VB应用程序的步骤 建立工程 设计应用程序的界面 设置界面对象的属性 编写程序代码 保存程序 执行并调试程序 生成可执行程序文件2.2 创建一个简单的VB应用程序该应用程序运行时将显示一个窗口,其中有“切换”和“退出”两个按钮:单击 2“切换”按钮,窗口的一个文本框中将交替显示红色的“VB编程不难学”和蓝 色的”只要认真下功夫”文字;单击“退出”按钮,将清除窗口并退出程序。第:章VB6的工程管理第三章VB6的工程管理工程是在VB中进行Windows应用程序设计的一个重要概念。所谓工程就是组 成一个应用程序的文件的集合。使用VB创建一个应用程序时,首先必须为它建 立一个工程,在应用程序设计过程中,通过工程来管理应用程序所包含的所有文 件。3.1 VB的工程在VB中可建立多种类型的工程,这里主要介绍标准EXE类型工程的建造和管 理。3.1.1 工程工程是组成一个应用程序的文件的集合,一个工程通常包括以下几种类型的文 件:工程文件(.vbp)窗体文件(.frm)窗体二进制数据文件(.frx)类模块文件(.cls)标准模块文件(.bas)ActiveX 控件文件(.ocx)资源文件(.res)3.1.2 工程管理器工程的操作管理主要是在工程管理器中进行。工程管理器窗u中显示当前工程所 包含的文件列表。3.2 工程的基本操作工程的基本操作主要包括创建、打开和保存工程,在工程中添加、删除和保存文 件,以及在工程中添加控件和对象等。创建、打开和保存工程 在工程中添加、删除和保存文件 在工程中添加和删除控件部件、对象和资源文件43.3工程的属性设置通用属性设置 工程类型 启动对象 工程名称 帮助文件名 工程帮助上下文标识符 工程描述 ActiveX控件升级生成的可执行文件属性设置版本号编译属性设置第四章VB6编程基础第四章VB6编程基础VB应用程序的结构、代码窗口的使用、VB代码的书写规则、数据类型、变量、常量、数组、过程和结构控制语句等。4.1 VB代码编写基础4.1.1 VB应用程序的结构一个VB应用程序通常是由多种类型的文件组成的,其中最常见的是窗体模块、标准模块和类模块。这些模块都可以包含声明和过程。1、窗体模块在窗体模块中包含窗体及其控件的属性设置值,同时还包含在该窗体的代码窗口 中编写的对常量、变量、类型和外部过程的声明以及Sub Function和Property 过程。.2、标准模块标准模块存放与特定窗口或控件无关的代码,通常是其他模块共同使用的声明和 过程的代码。3、类模块类模块用来定义类,并可用它创建被应用程序中的过程所调用的对象。4.1.2 代码编辑窗口VB的代码编辑器具有一定智能,可同步显示相应的语法成份结构的提示,能自 动填充语句、属性和参数,使代码编写更加方便。4.1.3 代码的书写规则VB程序代码不区分大小写。VB程序代码的主要的书写规则:可用续行符“(一个空格后跟一个下划线)将一个长语句分成多行书写 当一行中有多条语句时,语句间用冒号“:”分隔 注释以注释符(单引号)引导,可放在一行语句的最后,或单 独占据一行,但不能放在续行符的后面;注释也可以用关键字“Rem”引导,但它必须占据一行 VB中缺省数制是十进制数,也可以使用加前缀“&H”和“&0”分6别表示的十六进制和八进制数 标识符是为程序代码中的变量、常量、类型、过程、函数、类和其 他对象的命名。VB中标识符的命名有如下规则:(1)标识符必须是字母开头,后跟字母、数字或下划线(2)标识符长度不能超过255个字符,其中窗体、控件、类和模块的标识符长度不能超过40个字符(3)不能与VB中受到限制的关键字同名4.2 数据类型一个变量的数据类型指出该变量能存储何种类型的数据。VB提供了许多基本数 据类型,用户也可以根据需要自定义数据类型。4.2.1 基本数据类型VB的基本数据类型见P46表421,注意它们的类型名、类型符、占用字节数和 表示范围。例:Dim YesorNo As BooleanDim A As Byte,B As ByteDim I As IntegerDim LAs LongDim A As SingleDim P As CurrencyDim X As Double,Y As DoublePrivate S As StringDim Name As String*20Dim D As DateDimVDim a%,b&,c!,d#匕为整型,b为长整型,c为单精度型,d为双精度型,为货币型,$为字符串型YesorNo=l2A=&H0F:B=&H01A=A+BX=1.88E18:Y=2.01D16X=X*YS二Database”S=Left(S,4)D=#4/6/1999 8:30:50PM#V二“17”V=V-15v=u&v除了可以像其它标准类型一样操作外,Variants类型变量还包含四个特殊值:Empty,Nothing,Null 和 Erroro第四章VB6编程基础4.2.2 用户自定义数据类型格式:PrivatelPublic Type varnameelementname as typeEnd Type例:Private Type Stu RecordName As String*30Birthday As DateOther As VariantEnd As VariantDim Record 1 As StuRecord,Record2 As StuRecordRecord 1.Name=Abc4.2.3 枚举类型在模块的声明段用Enum语句来声明枚举类型,例如:Private Enum ElementSetSunMonTueEnd Enum4.3 变量与常量在应用程序执行期间,变量用来存储可能变化的数值,常量表示固定不变的数值。通常,在使用变量和常量前必须事先声明,并且它们有着自己的有效范围。4.3.1 变量变量有名字,它是用来引用变量所包含的数据的标识符;变量具有数据类型,以 确定变量能够存储的数据种类。变量的命名应遵循标识符命名的规则 一般应用变量声明语句声明变量(显式声明、隐式声明、有效范围)4.3.2 常量VB中有两种常量,一种是系统预定义的常量,还有一种是用户定义的常量。用户定义常量的命名用户定义常量的声明Public Private Const constantname As type=expression8用户定义常量的有效范围4.4 数组数组是指具有相同的数据类型的有序数据的集合,即一个数组中的所有元素具有 相同的数据类型。当声明了 Variant类型的数组时,其元素能够包含不同类型的数据。4.4.1 大小固定的数组1、数组的命名2、数组的声明根据声明的数组的有效范围不同,有三种方法声明大小固定的数组。过程级数组,在该过程中用Dim语句声明,例:Dim Number(lO)AsInteger 或 Dim K(1 To 5)或 Static State(lO)As Boolean 模块级数组,在模块的声明段中用Private或Dim语句声明,例:Private A(10)As Integer 或 Dim Address(1 To 50)As String*30 全局级数组,在模块的声明段中用Public语句声明,例:Public Price(lO)As Double 或 Public Name(l To 50)As String*203、数组的引用Dim n As IntegerDim Number(lO)As IntegerFor n=0 To 10Number(2)=2Next n4、多维数组例:Dim I As Integer,!As IntegerStatic MatrixA(l To 10,1 To 10)As DoubleFor 1=1 To 10For J=1 To 10MatrixA(I,J)=I*10+JNext JNext I第四章VB6编程基础4.4.2 动态数组1、动态数组的声明 过程级动态数组:Dim dynArray()或 Dim dynList()As Single 模块级动态数组:Private dynA()As Integer 或 Dim dynArrayO 全局级动态数组:Public dynArrayO As Double 或 Public dynList()2、动态数组的定义动态数组声明后并不能立即使用,还必须在使用它的过程中,用ReDim语句对 它的维数和上下界进行定义。例:ReDim dynArray(1 To 10)ReDim dynArray(2,1 To N)注意:ReDim语句通常是一个执行语句,只能在过程中使用 可使用ReDim语句反复改变动态数组的维数和上下界,但一般不能 修改它的数据类型4.5 运算符和表达式4.5.1 运算符运算符是表示实现某种运算功能的符号。按运算的操作对象和操作结果的不同数 据类型,VB中的运算符有自述运算符、连接运算符、比较运算符、逻辑运算符 和位运算符等多种类型。1、算术运算符算术运算符用来进行数学计算。P58表451按优先级别从高到低的顺序列出了 VB中的算术运算符。例:W的值为64,Double类型V=2A3A2V=-(3.14+12)*5.2/3V=13.145.8V=15.14Mod3.8V的值为13除以5的商2,Long类型V的值为15除以4的余数3,Long类型2、连接运算符连接运算符用来连接两个字符串。3、比较运算符比较运算符,亦称关系运算符,被用作两个表达式之间的比较操作,结果是一个 10布尔类型的量。P59表453列出了 VB中的比较运算符。4、逻辑运算符逻辑运算符用作逻辑类型表达式之间的逻辑操作,结果一般是一个布尔类型的 量。P60表4.5.4列出了逻辑运算符及它们运算的结果。5、位运算符位运算符用于实现对操作数的二进制位操作。VB使用逻辑运算符作为位运算符,分别被称为按位取反(NOT)、按位与(AND)、按位或(OR)、按位异或(XOR)、按位相等(EQV)和按位蕴含(IMP)。4.5.2 表达式VB中的表达式是由常量、变量、运算符、函数和圆括号组成的有意义的式子。根据表达式结果的数据类型,可把表达式分为数值表达式、字符表达式和逻辑表 达式等。在书写VB中的表达式时应注意以下儿点:优先顺序从高到低排列为:函数-算术运算-比较运算符-逻辑运算符 使用圆括号可明显地反映运算顺序或改变原定的优先顺序 如有必要,应使用类型转换函数对表达式中操作数的数据类型进行 转换,而尽可能不用VB的数据类型自动转换功能,以免不必要的错误4.6 过程过程是构成程序的逻辑模块,一般能完成一个相对独立的功能。利用过程能使程 序结构模块化,以便于程序的开发、调试和维护;同时,利用过程还能实现多个 程序对它的共享,可降低程序设计的工作量,提高软件开发的工作效率。在VB中有3种过程:Sub过程、Function过程和Property过程。4.6.1 Sub 过程Sub过程,亦称为子过程,是实现某一特定功能的代码段。它或者由程序调用,或者由事件触发,没有返回值。Sub过程的语法是:PrivateIPublicStatic Sub Procedurename(arguments),过程头statements,过程体End Sub,过程尾子过程可出现在窗体模块、标准模块和类模块中。在VB中子过程被分为通用过 程和事件过程两类。通用过程出现在模块的通用段中,它必须在程序中通过语句来调用。例(见程序EX2)。第四章VB6编程基础事件过程主要出现在窗体模块的窗体段和各控件段中,也可以出现在类模块的类 段中。事件过程是由对象的事件所触发调用的。事件过程的过程名。4.6.2 Function 过程Function过程,亦称为函数过程,它是实现某一数据处理功能并返回处理结果的 代码段。Function过程的语法:PrivatelPublic Static Function functionname(arguments)As typestatementsEnd Function例:Private Function Hypotenuse(A As Integer,B As Integer)As Double Hypotenuse=Sqr(AA2+BA2)End Function调用Function过程的方法和数学中使用函数的方法一样,即在表达式中可以通过 使用函数名,并在其后用圆括号给出相应的参数列表来调用一个Function过程。也能像调用Sub过程那样调用函数。例:Y=Hypotenuse(3,4)Call Year(Now)Year Now当用这种方法调用函数时,VB放弃该函数的返回值。4.6.3 VB过程的参数传递1.参数的按值传递和按地址传递在过程定义中,按值传递的形式参数前要带有关键字ByVai。例如,下列过程中 的参数x和y都是被声明为调用时按值传递的参数。Private Sub Changel(By Vai x As Integer,By Vai y As Integer)Dim intTemp As IntegerintTemp=x:x=y:y=intTempEnd Sub要在过程定义中声明按地址传递(缺省方式)的形式参数,应加上关键字ByRef,例如:Private Sub Change2(ByRef m As Integer,By Ref n As Integer)Dim intTemp As IntegerIntTemp=m:m=n:n=intTempEnd Sub例:见 2#04032.数组参数的传递VB的过程中允许以数组作为参数。在使用时应注意:数组参数只能按地址传递,而不能按值传递。12在形式参数表和实在参数表中,数组参数要忽略维数声明。例:编写求一维数组中所有元素之和的程序。程序如下:Private Sub Form_Click()Dim a(l To 5)As Integer,k As IntegerFor k=1 To 5a(k)=k+1Next kPrint Sum=;ArrSum(a()End SubPrivate Function ArrSum(x()As Integer)As IntegerDim i As Integer,t As Integert=0For i=LBound(x,l)To UBound(x,1)t=t+x(i)Next iArrSum=tEnd Function这里,系统内部函数LBound和UBound分别求数组指定维数的下界和上界,其 中维数可缺省(指一维数组的唯一的一维)。在VB过程的参数表中,可使用关键字Optional建立可选参数,也可使用关键字 ParamArray声明不定数量的参数。4.6.4 过程的递归VB中的过程可以是递归的,也就是说,过程可以调用自己来完成某个特定的任 务。例如,计算阶乘的函数;求两个数的最大公约数等。注意:构成递归要有两个条件,一是要有确定的递归结束条件和结束值,二是具 有能驱向递归结束条件的递归形式表示。4.6.5 系统内部函数VB提供了丰富的系统内部涵数,可在程序代码中直接调用。这些函数按处理功 能可分为数学函数、字符串函数、日期函数、类型转换函数、格式输出函数和交 互函数等。(注意:函数int()与函数fix()的区别)格式输出函数Format可使数值、日期或字符串按指定的格式输出,通常用Print 方法中。交互函数MsgBox和InputBox可分别打开一个消息对话框和输入对话框,格式:MsgBox(prompt,buttons,title)InputBox(prompt,ti tie,default)例:intAB=MsgBox(是否继续?”,vbYesNo+vbExclamation,消息框)strAB=InputBox(“请输入姓名“,“输入框”)第四章VB6编程基础4.6.6 常用方法从本质上说,方法就是一种过程,是面向对象的过程。常见的方法有:Cis、Print、Move等。4.7 VB基本语句4.7.1 赋值语句赋值语句的语法:Let varname=expression4.7.2 选择语句选择语句,也称条件分支语句。1.If语句格式:(1)If条件Then语句(2)If 条件 Then语句End If(3)If条件Then语句1 Else语句2(4)If 条件 Then语句1Else语句2End If2.Select Case 语句Select Case语句,亦称情况语句,语法如下:Select Case测试表达式Case表达式列表1语句组1Case表达式列表2语句组2Case Else语句组End Select4.7.3 循环语句 1.For.Next 语句14亦称计数循环,语法如下:For循环变量=初值To终值步长语句组Next 循环变量例1:编写程序,使其能在窗体显示输入的6个整数和其中的最大数。例2:在窗体中,单击“判别”按钮,出现一个输入框,在输入框中输入一个整 数后,在窗体文本框中即显示该整数是否为素数的字样;单击“退出”按钮,可 退出程序。例3:用筛选法找出2到100之间的素数,并按一定的格式在窗体上显示出来。程序代码:Private Sub Form_Click()Dim a(2 To 100)As Boolean,n As Integer,m As IntegerFor n=2 To 100a(n)=TrueNextFor n=2 To 100If a(n)ThenFor m=n+1 To 100If m Mod n=0 Then a(m)=FalseNext mEnd IfNext nm=0For n=2 To 100If a(n)Then Print Tab(m*8);n;:m=m+1If m=5 Then Print:m=0Next nEnd Sub例4:设计一个程序,启动后即能产生并显示10个随机二位正整数,单击窗体 可将这10个数按从小到大的顺序显示。程序代码:Const N=10Dim a(l To N)As IntegerPrivate Sub Form_Activate()Dim m As Integer,k As Integerk=0For m=1 To Na(m)=10+Int(Rnd*90)Print a(m);k=k+1If k=5 Then Print:k=0Next mPrintEnd Sub第四章VB6编程基础Private Sub Form_Click()Dim m As Integer,k As Integer,T As IntegerFor m=1 To N-1For k=1 To N-mIf a(k)a(k+l)ThenT=a(k):a(k)=a(k+1):a(k+1)=TEnd IfNextNextk=0For m=1 To NPrint a(m);k=k+1If k=5 Then Print:k=0Next mPrintEnd Sub2.For EachNext 语句亦称遍历循环3.DoLoop语句有当型循环(While)和直到型循环(Until)两种 当型循环Do While循环条件语句组Loop或Do语句组Loop While循环条件 直到型循环Do Until 条件语句组Loop或Do语句组Loop Until 条件注意:Do.Loop语句可以嵌套使用。如果Exit Do使用在嵌套的Do.Loop 语句中,则Exit Do会将控制权转移到外层循环。在循环体中,或者有退出循环的Exit D。语句,或者有使循环向结束 转化的语句,防止陷入“死循环”。4.WhileWend 语句语句如下:While条件16语句组Wend例5:已知自然对数的底数e的级数表示如下:利用上述公式求e,其中绝对值小于1E-8的项被忽略。程序代码:Private Function fac(n As Integer)As SingleIf n=0 Then fac=1 Elsefac=n*fac(n-1)End IfEnd FunctionPrivate Sub Form_Click()Dim e As Single,term As SingleDim m As Integer e=1:m=1 term=1/fac(m)Do While Abs(term)=0.00000001 e=e+term m=m+1 term=1/fac(m)LoopPrint e=;Format(e,#.#)End Sub4.7.4其他控制语句1.Go To语句 例:Go To Line 1Linel:注意:本过程内无条件转移尽可能少用此语句2.End语句例:End、End Sub End If、End With 等3.Exit语句Exit Do Exit For Exit Sub Exit Function 等。第五章窗体和标准控件第五章窗体和标准控件5.1 VB的对象5.1.1 对象的概念对象是数据和代码的集合,可以看成一个编程的单元。VB中的常用对象多为“可视”的,其中工具箱中控件都是对象。5.1.2 对象的属性属性是对象的特征(外观和行为),表现为一些属性值。可以通过改变对象的属 性来改变对象的特征。属性可以在设计进设定,也可以在运行时设定。5.1.3 对象的事件对象事件是指对象所能识别并响应的动作。例如:单击按钮等。5.1.4 对象的方法对象的方法是指对象能执行的动作。例如:Move即表示对象有移动这样一种方 法。使用使用对象方法的语句为:对象名称.对象方法参数例:Form2.LoadForm 1.Move 0,05.2 窗体5.2.1 窗体的属性窗体对象是VB应用程序的基本构造模块,是运行应用程序时与用户交互操作的 实际窗口。窗体的常用属性有:名称、Ciiption、Icon、MaxButton MinButton Height Width、Left、Top、WindowState 等185.2.2 窗体的事件窗体常用事件:Click、Load DragOver MouseMove GotFocus MouseUp、DblClick UnLoadDeactivate LostFocus DragDrop MouseDown5.2.3 窗体的方法窗体的常用方法有:Hide、Print、Show Move Refresh PrintForm SetFocus 等。5.3 控件使用基础在VB程序中,除了窗体对象外,还有包含在窗体对象中的对象控件。5.3.1 控件的分类VB6.0中的控件分为三类:标准控件、ActiveX控件和可插入的对象。标准控件又称为内部控件,是VB本身提供的。ActiveX控件包含在ActiveX控件部件中。可插入对象是指由其它应用程序创建的不同格式的数据。5.3.2 控件的基本操作 建立控件 选中控件 改变控件大小 删除、移动控件 复制控件5.3.3 控件数组控件数组由一组相同的类型的控件组成,具有共同的名称,它们的事件过程相同。控件数组的Index属性区分控件数组中的元素。5.3.4 控件的焦点焦点是对象接收用户鼠标或键盘输入的能力。可以在代码中用控件的SetFocus 方法来动态设置焦点。当控件得到或失去焦点时,会产生以下事件:GotFocus LostFocuSo第五章窗体和标准控件5.4 标准控件在缺省情况下,VB工具箱显示General选项卡,提供最常用的标准控件。5.4.1 命令按钮(CommandButton)命令按钮是VB中最常用的基本控件之一,几乎各种应用程序都有命令按钮。常用属性:Name、Caption(定义快捷键)、Font Enabled Visible BackColor Default、Cancel、Index 等主要事件:Click、MouseDown、MouseUp等(不支持双击事件)5.4.2 文本框(TextBox)文本框是一个多功能控件,可以显示或者接收用户输入的文本信息。常用 属性:Text、MultiLines、MaxLength Locked、Scroll Bars、Passwordchar SelStart、SelLength、SelText 等 主要事件:KeyPress Change Lostfocus Gotfocus 等 方法:Setfocus 等5.4.3 标签(Label)标签控件主要用来显示文本。与文本框不同的是,在标签中只能显示文本,而不 能编辑文本。常用属性:Name、Caption Font、Enabled Visible BackColor ForeColor Alignment AutoSize Wordwrap BackStyle、BorderStyle 等.应用举例:2#P104 例 5.2、P107 例 5.3、Pl用例 5.4、P110 例 5.5实验:用命令按钮改变窗体颜色文字颜色。(见1#P21例2-7)5.4.4 复选框(CheckBox)复选框是应用程序中允许用户进行多项选择的控件。常用属性:Name、Caption Font Enabled Visible BackColor ForeColor Value 等主要事件:Click等,不支持双击事件205.4.5 单选按钮(OptionButton)单选按钮通常以按钮组的形式出现,用户可从中选择一个选项。常用属性:Name、Caption Font Enabled Visible BackColor ForeColor Value 等主要事件:Click等5.4.6 框架(Frame)框架控件用来对其他控件进行分组,以便于用户识别和功能上分区。常用属性:Name、Caption Font、Enabled Visible BackColor ForeColor 等5.4.7 列表框(ListBox)列表框控件显示项目列表,用户可从中选择一个或多个项目。常用属性:Name、Caption Font Enabled Visible BackColor ForeColor List ListCount Listindex Selected、Sorted、Text 等 主要事件:Click.DbClick等 常用方法:Additem Removeitem Clear 等List属性包含一个数组,用于访问列表框中的项目。列表框中的每个项目都是数 组的元素,每个项目以字符串形式表示。引用列表框的项目时使用格式:列表框名称.List(index)第一个项目的index为0,最后一个项目的索引号为ListCount-10ListCount属性只能在程序中引用。Listindex属性只能在程序中设置或引用,表示在列表框控件中当前所选项目的索 引号。如果没有选择项目,其值为-1。Selected属性只能在程序中引用,反映列表框中的项目是否被选中。例:若Selected(O)为True,表示第一项被选中。Sorted属性指定控件中的项目是否自动按字母顺序排序。Text属性只能在程序中引用,返回列表框中所选择的项目内容。其返回的内容与 表达式List(Listlndex)的返回内容相同。主要事件:Click、DbClick等 常用 方法:Additem Removeitem Clear 等 应用举例:2#P117例5.8编写能对列表框中的项目进行添加、删除和统计的应用程序。要 求:单击“添加”按钮,可将文本框中输入的内容添加到下面的列表框;单击“删 除按钮可删除列表框中选定的项目;单击“统计人数”按钮,可将列表框中的 项目总数输出到右边的文本框(该文本框不允许用户编辑)。第五章窗体和标准控件5.4.8 组合框(ComboBox)组合框是将文本框和列表框结合在一起的控件,用户既可以在文本框中输入文 本,又可以在列表框中选择需要的表项。组合框的常用属性、事件和方法与列表框相同。组合框有三种式样:下拉式组合框、简单组合框和下拉式列表框。5.4.9 滚动条(HScrollBar VScrollBar)5.4.10 定时器(Timer)定时器是应用程序控制定时发生事件的控件。常用属性:Enabled Interval 等主要事件:Timer应用举例:2#P122例5.11建立一个数字时钟,要求在每天早上6点发出60下声音。5.4.11 其它标准控件VB的工具箱还提供图像控件、图片框、直线控件、形状控件、驱动器列表框、目录列表框、文件列表框、数据控件和OLE容器控件。5.5 应用举例例1:编写程序,运行时的界面如图所示。22要求:用户可以从“姓名”列表中选择项目或输入新的姓名,对于列表中没有的 姓名可自动添加到列表中;“班级”及“性别”只允许选择;单击0K按钮,即 可在“选择结果”下面的标签中输出选择结果;单击Delete按钮,可删除“姓名”组合框中的所选项目;单击Exit按钮,则退出程序;设置“字体”和“字号”,其效果反映在“选择结果”标签中。第五章窗体和标准控件第六章对话框对话框是一种特殊的窗体,通过它可以向用户显示各种信息,或者提示用户提供 应用程序继续执行所需要的数据。6.1 预定义对话框6.1.1 消息对话框消息对话框用来显示信息,让用户选择按钮,并可将用户的选择作为程序继续执 行的依据。MsgBox函数是VB中用来生成各类消息框的函数,常用格式如下:MsgBox(prompt,buttons,title)6.1.2 输入对话框输入对话框用于在程序运行时提示用户输入信息。InputBox函数是VB中用来生成输入对话框的函数,常用格式如下:InputBox(prompt,title,default,xpos,ypos)6.2 通用对话框通用对话框是一种控件,称为CommonDialog。使用该控件,可以创建“打开”、“另存为”、“颜色”、“字体”、“打印”五种标准对话框,以及打开指定的帮助文 件的“帮助”窗口。6.2.1 通用对话框控件启动VB后,选择“工程”菜单中的“部件”命令,在对话框的“控件”选项卡 中找到并选定“Microsoft CommonDialog Control 6.0”控件部件。通过调用对话框的方法可以显示相应的对话框:ShowOpen:显示“打开”对话框 ShowSave:显不“另存为对话框 ShowColor:显示“颜色”对话框 ShowFont:显示“字体”对话框 ShowPrinter:显示打印”对话框 ShowHelp:打开帮助文件窗口在程序运行时,通过对CommonDialog控件的Action属性赋值,也可以显示相 应的对话框。Action属性值及其含义如下:0:不显示对话框24 1:显示“打开”对话框 2:显示“另存为”对话框 3:显示“颜色”对话框 4:显示“字体”对话框 5:显示:“打印”对话框 6:显示帮助文件基本属性:DialogTitle CanceError等。在设计时设置通用对话框的属性,可在 属性窗口中直接设置;也可以右击通用对话框控件,选择“属性”,通过“属性 页”对话框进行设置。在程序运行时,可通过赋值语句设置通用对话框的属性。6.2.2“打开”对话框常用属性:FileName、FileTitle Filter InitDir 等。例:CommonDialog 1.FileName=c:windows*.bmpCommonDialogl.ShowOpens=CommonDialog 1.FileNamen=CommonDialogl.FileTitle6.2.3“另存为”对话框“另存为”对话框的常用属性与“打开”对话框相同。6.2.4“颜色”对话框常用属性:Color等例:Private Sub Command 1 _Click()CommonDialog l.ShowColorForm 1.BackColor=CommonDialog 1.ColorEnd Sub6.2.5“字体”对话框常用属性:Flags Color FontBold Fontltalic FontStrikethruFontUnderline FontName FontSize 等。例:Private Sub Command 1 _Click()CommonDialogl.Flags=1+256CommonDialog l.ShowFontTextl.FontName=CommonDialog 1.FontNameText 1.FontSize=CommonDialogl.FontSizeText 1.Fontltalic=CommonDialogl.FontltalicTextl.FontBold=CommonDialog 1.FontBold第五章窗体和标准控件Text 1.FontS trike thru=CommonDialogl.FontStrikethruTextl.FontUnderline=CommonDialogl.FontUnderlineText 1.ForeColor=CommonDialogl.ColorEnd Sub6.2.6“打印”对话框“打印”对话框可以让用户选择打印参数:指定打印机,选择打印输出方式、打 印质量、打印的份数等。除基本属性外,常用的属性有:Copies FromPage ToPage等。例:Private Sub Command 1 _Click()CommonDialog 1.ShowPrinterFor I=1 To CommonDialog 1.CopiesPrinter.Print Textl.TextPrinter.End DocNext IEnd Sub6.2.7“帮助”对话框例:Private Sub Command 1 _Click()Common
展开阅读全文