VisualBasic程序设计课程学习指导书.docx
郑州大学现代远程教育Visual Basic 程序设计课程学习指导书柳宏川编第一章 Visual Basic 程序设计概述一本章学习目标理解程序设计语言的概念,VB 的功能和作用。娴熟把握Visual Basic 的启动和退出方法,学会使用IDE 集成开发环境中标题栏、菜单栏、工具栏和窗体窗口、属性窗口、资源治理器窗口和代码窗口,了解工具箱窗口的作用。二本章重点、要点VB 的启动和退出、工程的概念、VB 集成开发环境的操作:窗口和工具栏的作用。三练习题1. 退出Visual Basic 的快捷键是。A. Ctrl+QB. Shift+QC. Alt+QD. Ctrl+Alt+Q2. 窗体设计器是用于设计。 A应用程序的界面B. 对象的属性C应用程序的代码D. 窗体的代码3. 启动Visual Basic 后, VB 为用户建立的第一个窗体是。AForm1B. FormC窗体 1D. 窗体4. 启动Visual Basic 后, VB 为用户建立的工程的名字是。A窗体 1B.工程 1C窗体D.工程5. 工程资源治理器窗口包含的文件类型有种。A.1 B. 2C3D. 46. 假设 VB 环境中缺少某个窗口,一般应从主菜单的下拉菜单中找到相应的激活命令。A. 编辑B. 文件C调试D. 视图7. 能够通过标准工具栏翻开的窗口是。 A代码窗口B. 设计器窗口C属性窗口D. 窗体布局窗口- 1 -8. 窗体文件的扩展名。A.basB.vbpC.exeD.frm9. 工程文件的扩展名。A B.vbpC. exeD.bas10. Visual Basic 的编程机制是。A. 面对过程B. 面对对象C大事驱动D. 可视化其次章 VB 可视化编程根底一本章学习目标理解构造化程序设计的思想,面对对象的程序设计。把握类、对象、属性、方法、大事和控件等概念。娴熟把握创立一个 VB 应用程序的过程,能运用 IDE 中的工具使用控件及对控件的大事编程,理解大事驱动的思想。二本章重点、要点面对对象的有关名词,使用 VB 创立一个应用程序的全过程,各种窗口的使用, 根本控件以及方法、属性的使用。三练习题1. 使用VB 建立一个应用软件的全过程有哪些步骤?。2. 保存VB 文件,至少要保存几个文件?应先保存什么文件?3. 工程文件,窗体文件,标准模块文件,类模块文件的文件名的扩展名分别是什么?4. 用代码对窗体中的控件设置属性值,这些代码应当放在什么大事中?5. 运行程序有几种方法?各是什么?6. 从代码窗口返回到设计窗体窗口VB 集成开发环境有几种方法? 7输入代码遗忘属性值时怎么办? 8在代码窗口输入代码时,输入控件的名称及圆点后,消灭下拉列表后,如何输入方法或属性?9. 窗体、标签、命令按钮、文本框的默认属性分别是什么?10. 在输入代码时,如何附属性列表和方法列表中快速输入属性及方法?- 2 -第三章 VB 语言根底一本章学习目标本章是 VB 编程的根本要求,肯定要娴熟把握根本数据类型、常量、变量、运算符、表达式等根本概念和规章。学会并能运用一些常用函数。二本章重点、要点编写 VB 程序的根本要求,记住并娴熟把握根本数据类型及对应的关键字,常量和变量的定义与使用、各类运算符的写法和使用、VB 表达式的规章。一些常用的内部函数要学会使用。三练习题1. VB 定义了哪几种数据类型?变量有哪几种数据类型?常量有哪几种数据类型?2. 假设期望使用变量x 来存放数据 765432.123456,应当将变量x 声明为何种类型?3. VB 共有几种表达式?依据什么确定表达式的类型?4. 在 VB 中,对于没有赋值的变量,系统默认值是什么?5. VB 算术表达式a/(b+c/(d+e/Sqr(f)的数学表达式是什么?6. 函数 Int(Rnd(0)*10)属于哪个范围内的整数?7. 挨次构造的特点是什么?8. Rem 和单撇号有什么不同?9. 试述 Tab和 Space两个函数的区分?10. 试述 Int和 Fix两个函数的区分?第四章 VB 掌握构造一本章学习目标本章主要表达 VB 的三种根本语句构造:挨次构造、选择构造、循环构造。这是VB 编程的根本要求,也是本门课程的重点内容。要求娴熟把握这三种根本构造的语法包括各种变化,能准确写出各种语句构造执行的步骤,能娴熟运用该语句进展编程,不消灭语法错误。同时,应娴熟把握一些常用的算法。常用算法:累加、连乘、- 3 -求素数、穷举法、递推法和最大、小值的求法等。二本章重点、要点VB 的挨次构造、选择构造、循环构造的语法和常用算法。在VB 中,实现循环的语句有三种:For-Next 循环计数循环、While-Wend 循环当循环和 Do-Loop 循环Do 循环。在这三种循环语句中,进展不同的组合,可以形成多种格式的语句。三练习题1. 通过键盘输入假设干数,当输入 0 时完毕输入0 不参与计算,计算并输出这些数的平均值。2. 从 1 开头计算奇数的平方倒数之和,要求最终一项刚好小于0.0001。3. 输出如下图的图形。4. 输入 30 个字符,统计其中字符A,B,C 的个数不分大小写,连续输入三个字符Q, 则完毕程序。5求 1!+2!+3!+n!6求出Fibonacci斐波那契数列的前20 项。Fibonacci斐波那契数列的规律是:前 2 项为 0 和 1,其余各项为该项前 2 项之和,即 0,1,1,2,3,5,8,13。7打印九九乘法表。8. 输入两个正整数,求其最小公倍数和最大公约数。9. 找出 1000 以内全部的个位数为 3 素数,并统计其个数。10. 对于下面所示的分数序列:1 , 2, 3 , 5 , 8, 13,23581321求出该序列的前 10 项的和,并打印出第 10 项。- 4 -第五章 数组和自定义类型一本章学习目标本章理解 VB 的数组的概念及数组的作用、娴熟把握数组的声明方法、VB 数组的根本操作、能运用数组进展编程,把握一些常用算法的编程思想,学会选择法和起泡排序法。二本章重点、要点VB 的数组的概念、VB 静态数组及声明、VB 动态数组及声明、VB 数组的根本操作、选择法排序和起泡法排序,利用数组进展编程的一些常用算法。三练习题1. 将一个一维数组a(9)中各元素值按行的挨次放入二维数组b(3×3)。2. 用随机数函数产生 10 个 40 内的整数,使用选择排序法从小到大排序3. 生成以下二维数组,且按以下格式输出。34567891011121314151617184将一个一维数组反序放置。例如: a=(67,89,76,98,66), 反序放置后,a=(66,98,76,89,67)5. 有一个m×n 矩阵,找出最大元素值及其最大元素值所在的行、列位置。6. 将矩阵m(n,n)主对角线和次对角线上的元素置为1,其余元素置为 0。7. 将一个二维数组am,n按行挨次将每个元素放入一个一维数组b(m×n)。8. 将用 inputbox输入的一个数插入到一个按递增排列的有序数列中,插入后该数列仍旧 有序。 9有一个无序数组,删去与第一个元素值一样的其他元素值,删除后其他元素的值前移。第六章 过 程一本章学习目标本章娴熟把握函数过程的定义与调用,娴熟把握子过程的定义与调用,学会参数传递方式:传值和传址,理解变量、过程的作用域,理解递归定义和思想,能运用递- 5 -归进展编程。二本章重点、要点函数过程和子过程的定义与调用,参数的传递方式:传值和传址,变量、过程的作用域,递归等概念。三练习题1. 函数过程有什么缺乏?2. 子过程与函数过程区分有哪些?3. 函数的参数传递时,什么是传址方式?4. 函数的参数传递时,什么是传值方式5. 什么是变量、过程的作用域?6. 过程的作用域有哪几个级别?其对应的关键字是什么?7. 在VB 中,变量有哪些级别?如何定义?8. 什么是递归?请举例说明。9. 设计递归时应遵循哪些原则?第七章 用户界面设计一本章学习目标理解控件的作用。能运用常用控件进展编程。二本章重点、要点VB 中可使用的控件分为三类:标准控件、ActiveX 控件和可插入对象。标准控件(也称内部控件),VB 启动后消灭在工具箱中的控件,共有 20 个,既不能添加,也不能删除。这些控件由VB 的.exe 文件供给。AcitveX 控件,在以前的版本中称为 OLE 控件或定制控件,是 AcitveX 部件的一局部, AcitveX 部件是可以重复使用的编程代码和数据,是由用AcitveX 技术创立的一个或多个对象所组成。AcitveX 部件通常分为四种:AcitveX 控件、AcitveX DLL、AcitveX EXE 和 AcitveX 文档。AcitveX 部件是扩展名为.OCX 的独立文件,通常存放在 Windows 的 system 文件夹中。使用AcitveX 控件之前必需加载。大多数AcitveX 控件的属性可以简洁地在其属性页中设置。可插入对象是指Windows 应用程序的对象,也可以添加到工具箱中,具有与标准控件- 6 -类似的属性,可以同标准控件一样使用。单项选择按钮和复选框、框架、列表框和组合框、滚动条和 Slide 控件、时钟、ProgressBar 控件、UpDown 控件、Animation 控件、SSTab 控件、鼠标器和键盘三练习题1. VB 中可使用的控件分为哪几类?2. 框架有什么作用?3. 列表框的作用是什么?4. 组合框有哪几种类型?5. 时钟控件的作用如何?6. 鼠标大事有哪些?7. 键盘大事有哪些?各自的作用如何?8. Animation 控件有什么用处?9. 怎样设置鼠标光标的外形?10. SSTab 控件的Click 大事过程有什么特点?第八章 数据文件一本章学习目标学会文件的概念,学会文件的作用,学会文件的分类,娴熟把握文件的读写操作方法、了解并能运用常用的文件操作语句和函数。娴熟把握用文件进展数据存储的方法。二本章重点、要点文件的概念,文件的作用,文件的分类,文件的读写操作方法、常用的文件操作语句和函数。三练习题1. 什么是文件?2. 依据访问模式,文件可分为哪些种类?请说出其特点。3. 假设要对文件进展访问,需要经过哪几个步骤?4. 翻开一个挨次文件时,有哪几种翻开的模式?都有什么作用?5. 读挨次文件时,有哪几种命令可以使用?命令的格式和作用各是什么?6. LOF和 EOF都有什么作用?- 7 -7. 有一个数据文件data.dat,请编写程序将 data.dat 中的数据复制到文件student.dat 中去。8. 一个学生信息的文本文件为student.dat,学生信息包括: 姓名字符型,专业字符型,年龄整型,分数整型编写程序,找出其中分数最高的和分数最低的学生并输出其记录到文件HL.TXT 中去。9一个学生信息的文本文件为student.dat,学生信息包括:姓名字符型,专业字符型,年龄整型,分数整型编写程序,统计出其中不及格的学生人数并输出。10一个学生信息的文本文件为student.dat,学生信息包括: 姓名字符型,专业字符型,年龄整型,分数整型编写程序,查找姓名为“王军”的学生并输出其记录。- 8 -参考答案第一章 Visual Basic 程序设计概述1.C2. A3. A4. B5. D6. D7. C8. D9. B10. C其次章 VB 可视化编程根底1. 具体过程如下(1) 在窗体上建立用户窗口界面对象。(2) 分别对对象设置属性。(3) 分别对对象大事的过程编程且完成代码输入。(4) 运行程序和调试程序。(5) 保存程序。2. 至少保存 2 个文件,先保存窗体文件,后保存工程文件。3.vbp, .frm, .bas, .4. 应当放在窗体装入Form_Load大事中5. 三种:方法一是执行工具栏中的启动按钮;方法二是选取菜单中的“运行/启动”命令; 方法三是直接按F5 键。6. 至少5 种方法:点击窗体窗口;选择菜单栏的viewobject; shift+F7; 点击资源治理器中的窗体按钮;单击工程资源治理器中的窗体名称如:form1。 7在代码窗口输入代码时,控件的名称及圆点输入后,系统自动消灭属性及方法的下拉 列表,可以帮助使用者快速输入。 8输入方法或者属性关键字的首字母进展初选,再用鼠标或者光标键细选,然后双击鼠 标左键或者单击空格键。 9标签、命令按钮、文本框、图形图像框的默认属性分别为: caption、caption、text 和picture。 10可以先输入属性或方法的首字母,然后找到需要的属性及方法并选择,用鼠标双击或击空格键即可完成输入。- 9 -第三章 VB 语言根底1. VB6.0 定义了 13 种数据类型,分别是整数、长整数、单精度浮点型、双精度浮点型、货币型、字节型、变长字符串、定长字符串、布尔型、日期型、对象型、可变类型数值、可变类型字符。变量的数据类型有:数值型整型、长整型、单精度浮点型、双精度浮点型、货币型和字节型、字符串变长字符串和定长字符串、布尔型、日期型、对象型、可变数据类 型数值和字符。常量的数据类型有:字符串常量、数值常量整型、长整型、单精度浮点型、双精度浮点型、货币型和字节型、布尔常量、日期常量。2. 应当使用双精度数Double 类型。3. VB 有 5 种类型的表达式,分别是:算术表达式、字符串表达式、关系表达式、布尔表达式和日期表达式,VB 依据表达式的运算符来确定表达式的类型。4. 在 VB 中,当使用声明语句建立一个变量后,系统自动将数值类型的变量赋初值0,变长的字符串被初始化为一个零长度的字符串“,而定长的字符串则用空格填充。Variant变量被初始化为Empty。将布尔型的变量初始化为False。a5. 写成的数学表达式为b +cfd +e6. (0,10)7. 挨次构造是一种线性构造,在这种构造中,各操作块依据各自某种挨次依次执行。8. Rem 命令及命令后的说明文字要求独占一行,Rem 和注释文字间肯定要加一个空格,假设非要使用 Rem 命令将注释语句写在某条语句后,则需在Rem 前使用英文“:”号;而单撇号没有上述限制。9. Tab函数是确定定位函数,总是从左边界开头;Space函数能从当前输出位置起输出假设干空格形成一段空距。Fix(x) 函数无论对正数或负数都是去掉小数局部,取整数局部符号不变 ,如: Fix(9.1)=Fix(9.9)=9,Fix(-9.1)=Fix(-9.9)=-9;而 Int(x)函数返回的是不超过x 的最大整数,如:Int(9.1)=Int(9.9)=9,Int(-9.1)=Int(-9.9)=-10。第四章 VB 掌握构造1- 10 -Private Sub Command2_ClickDim Sum As Single, Count As Integer, Val As Single Sum = 0Count = -1Val = 1While Val <> 0Val = InputBox(“请输入一个数:“ & Chr(13) & Chr(10) & “输入 0 完毕程序!“) Sum = Sum + ValCount = Count + 1 WendIf Count <> 0 ThenPrint “While-Wend 循环:“,“共输入了 “; Count; “ 个数“,“平均值为 :“; Sum /CountEnd If End Sub2Private Sub Form_ClickDim N as Integer,Sum as Single,Term as Single N = 1Sum = 0 DoTerm = 1 / (N * N) Sum = Sum + TermN = N + 2Loop Until Term < 0.0001 Print “运算结果为:“; Sum Print “最终一项的值为:“; Term End Sub3Private Sub Command1_Click Print Tab(18); “双循环的结果“ For i = 1 To 10Print Tab(25 - i);For j = 1 To 2 * i - 1 Print “*“;Next j PrintNext i End Sub 思考: 代码段中倒数第三行的语句Print 的作用是什么? 语句 Print Tab(25 - i);的作用是什么?特别体会其中的 25 的含义。Private Sub Command2_Click Print Tab(18); “单循环的结果“ For i = 1 To 10Print Tab(25 - i); String(2 * i - 1, “*“)- 11 -Next i End Sub双循环方式中的内循环被字符串函数String(2 * i - 1, “*“)所替代。对于字符串函数,假设能娴熟把握,对程序设计具有很大的帮助。4Private Sub Command1_ClickDim ACount As Integer, BCount As Integer, Dim CCount As Integer, QCount As Integer Dim CH As String * 1ACount=0BCount=0CCount=0QCount=0For I = 1 To 30CH = InputBox(“请输入一个字符!“ & Chr(13) & Chr(10) + “连续输入三个字符 Q,可完毕程序“, “字符统计“)CH = UCase(CH)If CH = “Q“ Then QCount = QCount + 1 Else QCount = 0 If QCount = 3 ThenMsgBox “连续输入了三个字符Q,完毕输入“, , “留意“ Exit ForEnd IfSelect Case CHCase “A“ACount = ACount + 1 Case “B“BCount = BCount + 1 Case “C“CCount = CCount + 1 End SelectNext IText1.Text = ACount: Text2.Text = BCount: Text3.Text = CCount End Sub5Private Sub Form_ClickDim N As Integer, I As IntegerN = InputBox(“请输入一个数正整数N:“) factorial = 1Sum = 0For I = 1 To Nfactorial = factorial * I- 12 -Sum = Sum + factorial Next IPrint “小于自然数“; N; “的自然数阶乘之和为:“, Sum End Sub6Private Sub Form_Click a = 0b = 1Print a, b,For i = 1 To 9 a = a + b b = a + bPrint a, b,If i Mod 2 = 1 Then Print Next iEnd Sub运行结果见图:7Private Sub Form_Click For i = 1 To 9For j = 1 To iPrint Tab(11 * (j - 1); j; “*“; i; “=“; Str(i * j); Next jPrint Next iEnd Sub运行结果如以下图所示:- 13 -8编写了两个按扭的大事程序。 “求最大公约数”按扭的过程为:Dim A As Integer, B As Integer, N As Integer, M As Integer, R As Integer Private Sub Command1_ClickM = Val(Text1.Text) N = Val(Text2.Text) A = MB = NIf N = 0 Then Exit Sub R = M Mod NDo While R <> 0 M = NN = RR = M Mod NLoop Label3.Caption = NEnd Sub “求最小公倍数”按扭的过程为: Private Sub Command2_ClickIf N <> 0 Then Label4.Caption = A * B / N End Sub运行界面可参阅图。说明:该设计运行时,假设要求最小公倍数,需要先按“求最大公约数”的按扭,- 14 -求出最大公约数前方可按“求最小公倍数”的按扭。9窗体的Click 大事过程为: Private Sub Form_Clickn = 0For i = 3 To 1000 Step 2prime = 1x = 2m = Int(Sqr(i)While x <= m And prime = 1 If i Mod x = 0 Thenprime = 0Elsex = x + 1 End IfWendIf prime = 1 And i Mod 10 = 3 Then n = n + 1If n Mod 5 = 0 Then Print iElsePrint i, End IfEnd If Next i PrintPrint “1000 以内个位数为 3 的素数共有“; n; “个“End Sub运行结果见图10.窗体的Click 大事过程为:- 15 -Private Sub Form_ClickSum = 1 / 2x = 1y = 2For i = 2 To 10 temp = xx = yy = x + tempSum = Sum + x / y Next iPrint “数列的前 10 项的和为:“, Sum Print “该数列的第 10 项为:“, x; “/“; yEnd Sub说明:该数列的规律是:数列项的分子为其前一项的分母,分母为其前一项的分子与分母 之和。在程序中留意生成的分子和分母时需要利用中间变量temp,并且关注计算的挨次。第五章 数组和自定义类型1程序如下:Option Base 1Private Sub Form_Load Dim a, b(3, 3)n = 1a = Array(2, 3, 5, 7, 9, 15, 17, 19, 22)For k = 1 To 3For j = 1 To 3b(k, j) = a(n)Print b(k, j), n = n + 1Next j PrintNext k End Sub2Option Base 1Private Sub Form_Load Dim a%(10), k%, j%, i% RandomizeFor k = 1 To 10a(k) = Int(Rnd * 40 + 1) NextFor k = 1 To 9- 16 -i = kFor j = k + 1 To 10If a(i) > a(j) Theni = j保存位置,先不交换数据Next jd = a(k): a(k) = a(i): a(i) = dj 循环完毕依据登记的位置交换数据Print a(k); Next kPrint a(10) End Sub3方法一:Option Base 1Private Sub Form_Load Dim m&(4, 4), i%,j% For i = 1 To 4For j = 1 To 4m(i, j) =(i - 1) * 4 + j + 2Print Spc(5 - Len(Str(m(i, j); m(i, j); NextjPrint Next iEnd Sub方法二:Option Base 1Private Sub Form_LoadDim m&(4, 4), i%,j,n% n = 3For i = 1 To 4For j = 1 To 4m(i, j) = nPrint Spc(5 - Len(Str(m(i, j); m(i, j); n = n+1Nextj PrintNext i End Sub4程序如下:Option Base 1Private Sub Form_LoadDim a, ba = Array(2, 3, 5, 7, 9, 15, 17, 19, 22)n = UBound(a)For k = 1 To n / 2 b = a(k)a(k) = a(n + 1 k)a(n - k + 1) = b- 17 -Next kFor k = 1 To n Print a(k);Next k End Sub5程序如下:Option Base 1Private Sub Form_Load Dim a, m%, n%, i%, j% m = InputBox(“input m“) n = InputBox(“input n“) ReDim a(m, n) RandomizeFor i = 1 To m For j = 1 To na(i, j) = Int(Rnd * 100) Print a(i, j);Next j Print Next iMax = a(1, 1) h = 1: l = 1For i = 1 To mFor j = 1 To nIfMax < a(i, j) Then H = i: l = jEnd If Next jNext iPrint a(h, l); h, l End Sub6程序如下:Option Base 1Private Sub Form_Load Dim a%, m%, i%, j% m = InputBox(“input m“) ReDim a(m, m)For i = 1 To m a(i, i) = 1a(i, m - i + 1) = 1 Next iFor i = 1 To m For j = 1 To mPrint a(i, j);- 18 -Next j PrintNext i End Sub7程序如下:Option Base 1Private Sub Form_LoadDim a%(2, 4), b%(8), i%, j%, n%n = 1For i = 1 To 2For j = 1 To 4a(i, j) = InputBox(“input number“) b(n) = a(i, j)n = n+1 Next jNext iFor i = 1 To 8 Print b(i);Next i End Sub8程序如下:ption Base 1Private Sub Form_Load Dim a, i%, j%, k%, n%a = Array(53, 59, 67, 89, 90, 95)n = (UBound(a) + 1) ReDim Preserve a(n)k = InputBox(“iuput x“) For i = 1 To n - 1If k < a(i) Then Exit For Next iFor j = n To i + 1 Step -1 a(j) = a(j - 1)Next j a(i) = kFor i = 1 To n Print a(i);Next i End Sub 9程序如下:Option Base 1Private Sub Form_LoadDim a, i%, j%, k%, n%, kk%a = Array(66, 66, 67, 90, 87, 66, 90, 67, 66)- 19 -n = UBound(a) i = 2Do While i < n For k = i To nIf a(1) = a(k) Thenn = n - 1”遇到一样的数,总数则要削减一个Exit ForEnd If Next kFor j = k To n”遇到一样的数则删除a(j) = a(j + 1)Next ji = i + 1 LoopReDim Preserve a(n)”重定义数组For i = 1 To n”输出结果Print a(i); Next iEnd Sub第六章 过 程1当有以下二点时,用函数不便利:(1) 不是为了获得某个函数值,而是为了某种功能的处理。(2) 要获得多个结果。2(1) 函数过程名有值,有类型,在函数体内至少赋值一次;子过程名无值,无类型,在子过程体内不能对子过程名赋值;(2) 调用时,子过程调用是一句独立的语句。函数过程不能作为单独的语句加以调用,必需参与表达式运算。(3) 一般当过程有一个函数值,使用函数过程较直观;反之假设过程无返回值,或有多个返回值,使用子过程较直观。3传址:形参得到的是实参的地址,当形参值的转变同时也转变实参的值。4传值: 形参得到的是实参的值,形参值的转变不会影响实参的值。5作用域:变量、过程随所处的位置不同,可以被访问的范围。6窗体/模块级:加 Private 关键字的过程,只能被定义的窗体或模块中的过程调用。- 20 -全局级:加 Public 关键字缺省的过程,可供该应用程序的全部窗体和全部标准模块中的过程调用。7局部变量:在过程内声明的变量,只能在本过程中使用。窗体/模块级变量:在“通用声明”段中用 Dim 语句或用 Private 语句 声明的变量,可被本窗体/模块的任何过程访问。全局变量:在“通用声明”段中用 Public 语句声明的变量,可被本应用程序的任何过程或函数访问。8. 用自身的构造来描述自身就称为“递归”。例如对阶乘的定义: n!n*n1!n1)!n1*n2!,0!1 9递归过程中有终止的条件和终止时的值或某种操作;每递归调用一次,其中的参数要向终止方向收敛。第七章 用户界面设计1. VB 中可使用的控件分为三类:标准控件、ActiveX 控件和可插入对象。2. 每个窗体中可能会存在很多控件,为了将控件适当地按功能分组,可以使用 框架将某些控件组合在一起,对一个窗体中的各种功能进展分类,以便于用户识别。当用框架将同一个窗体上的单项选择按钮分组后,每一组单项选择按钮都是独立的。3. 列表框以列表形式显示一系列工程,用户可以从中选择一个或者多个列表项。4. 组合框的类型有:下拉式组合框Style 属性值为 0、简洁组合框Style属性值为 1和下拉式列表框Style 属性值为 2。5. 时钟控件是一种可按肯定时间间隔触发大事的控件,通常用于检查系统时钟,确定是否执行某项任务。运行时,时钟控件不行见。6. 鼠标大事有Click、Dblclick、MouseDown、MouseUp 和MouseMove。7. 键盘大事有KeyPr