收藏 分销(赏)

第5章-数组.ppt

上传人:精*** 文档编号:10267236 上传时间:2025-05-08 格式:PPT 页数:64 大小:563KB
下载 相关 举报
第5章-数组.ppt_第1页
第1页 / 共64页
第5章-数组.ppt_第2页
第2页 / 共64页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,第5章 数组,在用计算机解决实际问题时,经常会遇到对批量数据进行处理的情况,如为了统计100个学生的成绩,按简单变量来处理会很不方便,由此引入了数组,极大的提高了此类问题的处理效率。本章以数组对批量数据的处理为例,介绍数组的概念及其应用、部分常用控件列表框和组合框,及直线和形状控件。,【,主要内容】,掌握数组的基本概念及其使用,掌握控件listBox,ComBox的常用属性及其方法的使用,掌握控件Line,Shape的常用属性及基本应用。,5.1 引例,5.2 数组,5.3 控件数组,5.4 直线(Line)与形状(Shape),5.5,列表框(ListBox)与组合框(ComboBox,),本章小结,【例5.1】设计一个用于对学生成绩排名的应用程序。程序运行界面如下图5.1(a)所示。,5.1 引例,图5.1(a)【例5.1】运行结果,操作步骤:,(1)设计用户界面,根据界面设计要求,创建如图5.1(b)所示用户界,面。将所需控件:两个标签(Label),两个列表框,(Listbox)和一个命令按钮(command)分别放到适当位置,进行相应的属性设置。具体控件属性设置如下表5.1所示。,图5.1(b)【例5.1】用户界面,控件名称(name),属性,属性值,窗体(Form1),caption,学生成绩排名,标签(Label1),caption,排名前数据,标签(Label2),caption,排序后名次,命令按钮(Command1),caption,输入数据并排名,(2)代码编写,分析:设置好所需界面后编写相应的事件过程,本例主要事件过程是Command1的Click事件。该事件要求完成:,通过输入对话框输入各学生的姓名和成绩,并把当前输入的数据显示在左列表框以便查对,输入完毕后,开始对输入的数据按成绩进行排序,最后把排序后的数据显示在右列表框内。,此算法的关键在于如何排序,排序的方法有多种,有选择法,冒泡排序法等。,对n个数a(1)a(n),采用选择排序法的算法是:,n个数a(1)a(n),采用选择排序法的算法是:,先在n个数中选最小数,放在数组的第1个元素中,即:取第1个数,与后面n-1(即2与n)个数逐个比较。若第1个数大,则a(1)与参与比较的数组元素中的值进行互换,再将互换后的第1个数与剩下的数据比较,直到最后。,再在第2至n个元素中,选最小数,放在第2个数组元素中。,取第2个数,与后面n-2(即3到n)个数逐个比较。若第2个数大,则互换,直到最后。,重复以上步骤,直至在最后两个数中选取最小数,放在第n-1数组元素中。,最后第n个元素已是最大数了。,说明:,(1)在设计界面时除了以前用过的命令按钮和标签以外,还用到列表框(Llistbox)控件,这个控件及其相关的内容将在本章作详细的讲解。,(2)编写代码时出现的 Dim Name(n)as string属于数组的定义,具体相关数组的使用及有关概念是本章的主要内容之一。,(3)排序交换数据时,应让姓名和成绩同时交换,若只交换成绩,则最终结果会张冠李戴。,【例5.2】在窗体上显示6种可以使用的形状,通过控件数组来实现,运行结果如图5.2(a)所示:,图5.2(a)【例5.2】运行结果,操作步骤如下:,(1)设计用户界面:,根据程序的运行结果,用户可设计如图5.2(b)所示的界面。,图5.2(b)【例5.2】用户界面,设计过程如下:,先将控件Shape放置在窗体上,并将其激活;,执行复制命令(Ctrl+C),将该控件复制;,执行粘贴命令(Ctrl+V),将显示一个对话框,询问“已经有一个控件为Shape1,是否创建控件数组?”,选择“是”,窗体左上角将出现一个控件,它就是控件数组的第二个元素。,执行粘切命令(Ctrl+V),建立控件数组的其它元素。将其放在合适的位置并可用菜单栏的“格式”对其进行设置,。,(2)编写代码,在窗体中只放置控件数组,而要输入对应的标号需通过print方法来实现,对于Shape1控件数组中各元素的形状由Shape控件的Shape属性来完成,形状的填充由Shape控件的FillStyle属性实现,具体的过程如下:,Private Sub Form_Click(),FontSize=12,CurrentX=280,Print 0;设置形状对应的标号,For i=1 To 5,Shape1(i).Left=Shape1(i-1).Left+800,Shape1(i).Shape=i 设置shape1控件数组的形状,Shape1(i).FillStyle=i+2 填充shape1控件数组,Shape1(i).Visible=True 使得shape1(i)可见,CurrentX=CurrentX+500,Print i;,Next i,End Sub,(3)运行程序,验证结果,运行程序,单击窗体后出现如图5.2(a)所示结果。,说明:,(1)在设计界面时使用了Shape控件,这个控件及其相关的内容将在本章作详细的讲解。,(2)编写代码使用了控件数组Shape1,注意掌握创建数组控件的方法的使用,对于建立控件数组的另一方法将在后面介绍。,VB中将具有相同名字、不同下标值的一组变量称为数组。数组中的每个变量称为数组元素或下标变量。可用数组名和下标唯一地标识一个数组元素,如Score(5)就表示数组名为Score的数组中下标为5的数组元素。一个数组如果只用一个下标就能确定一个数组元素在数组中的位置,则称为一维数组,而由两个或多个下标所组成的数组称为二维数组或多维数组。在其它语言中数组用来存储相同类型的数据,但是在VB中数组可用来存放不同类型的数据。,VB中的数组有两种,一种是静态数组;一种是动态数组。数组必须先声明后使用。数组的声明既可以在模块中的声明,也可以在过程中声明。,5.2 数组,5.2.1 静态数组,5.2.2 动态数组,5.2.3 数组的基本操作,5.2.4 For Each.Next 循环语句,以一个简单的应用程序的界面为例,介绍组成菜单的基本元素(如所示)。菜单栏由多个菜单名(也叫主菜单)组成,如“文件”、“编辑”等都是菜单标题。某一个菜单标题下拉出一个菜单,包含一个或者多个菜单项,如图8.2,所示。,图8.2 菜单的组成元素,菜单标题,菜单栏,快捷键,菜单项,分隔线,5.2.1 静态数组,所谓静态数组是指维数与下标的范围在声明时就已经确定了。声明静态数组使用的语句与声明变量的语句类似。对于一维数组格式为:,Dim 数组名(下标说明)As 类型,数组名(下标说明)As 类型.,例如,:,Dim A1(5)as integer,Dim A2(2 to 5)as integer,对于二维数组,格式为:,Dim 数组名(第一维下标上界,第二维下标上界)as 类型名称,例如,:,Dim,B1(2,3)as integer,定义了一个二维数组,数组名为B1,类型为integer,该数组有3行,4列,占12个整型变量的空间,如下所示:,B1(0,0),B1(0,1),B1(0,2),B1(0,3),第0行,B1(1,0),B1(1,1),B1(1,2),B1(1,3),第1行,B1(2,0),B1(2,1),B1(2,2),B1(2,3),第2行,说明:,(1)数组名的命名与变量名命名一致,但不能和简单变量重名。,(2)下标说明又称维定义符,定义了这个维的大小。它有两种表示格式:,或,下界和上界必须使用数值型常量表达式,一般直接使用整型常数,它表示数组元素的下标应在下界到上界的范围内,超出范围将出现运行错误。,在缺省状态下,起始下标(下界值)为0,则Dim Score(100),表示声明了一个有101个元表的数组,它的每个元素分别为Score(0),Score(1)、Score(100)。可以使用专门语句重新设置缺省下界值。格式为:Option Base 0|1。,例如:Option Base 1 表示将下界缺省值设置为1,(3)类型指的是数组元素的类型。省略类型则表示为Variant类型。如,Const n=10,Dim Name1(n)As String,Score(n)As Single,(4)其它属性,帮助上下文:,指定一个唯一的数值作为帮助文本的标识符,可根据该数值在帮助文件中查找适当的帮助主题。,协调位置:,与OLE功能有关,一般取0值,。,复选(Checked)属性:,如果选中(),在初次打开菜单项时,该菜单项的左边显示“”。在菜单条上的第一级菜单不能使用该属性,。,有效(Enabled)属性:,如果选中(),在运行时以清晰的文字出现;未选中则在运行时以灰色的文字出现,不能使用该菜单项。,显示窗口列表(WindowList)属性:,当菜单要包括一个打开的所有MDI(多文档界面)子窗口的列表时,选中()此项。,5.2.2 动态数组,动态数组是指在声明数组时不指明下标的大小(省略括号中的下标),当需要时,再用ReDim语句重新定义其大小。建立动态数组的步骤如下:,(1)声明动态数组,声明动态数组的格式为:Dim 数组名()As 类型名,上述数组定义的语句中,并没有标明数组的维数及数组元素的个数,事实上,它定义了一个空维数组,表明该数组是动态数组。,(2)用ReDim语句分配数组的实际元素个数,ReDim语句是一个可执行语句,它只能出现在过程中,其作用是为数组分配实际空间。格式为:,ReDim 数组名(下标说明,下标说明,例如:,Dim n as integer,Dim Name1()as string,n=val(),ReDim Name1(n),说明:,上面代码首先定义了一个变量n,然后再定义了一个空维数组Name,n的值通过inputbox输入,最后用ReDim语句为数组分配实际元素个数。,注意:,可以多次使用ReDim语句来改变数组的大小,但每次使用会使原数组的内容丢失,若想使原数据不丢失,则可在使用ReDim语句中使用关键字Preserve,格式为:,ReDim Preserve数组名(下标说明,下标说明),不能用ReDim Preserve语句改变数组原有的数据类型。,5.2.3 数组的基本操作,数组的基本操作包括数组元素的引用、初始化以及输入输出等。,1 数组的引用,格式:数组名(下标,下标.),声明数组和使用数组元素是不同的,在使用过程注意区别。,2 数组元素赋初值,(1)利用循环结构,for i=1 to 10,a(i)=0 a数组的每个元素值为0,next i,(2)利用Array函数,Dim a as Variant,b as Variant,i%,a=Array(1,2,3,4,5),b=Array(“abc”,“dfd”,”dttt”),For i=0 to UBound(a),print a(i);“”;,Next i,For i=0 to UBound(b),print b(i);“”;,Next i,在使用Array函数时应注意以下几点:,Array函数用来为数组元素赋值,其格式为:,数组变量名=Array(数组元素值),其中“数组变量名”是预先定义的数组名,在“数组变量名”之,后没有括号。之所以称为“数组变量”,是因为它作为数组使,用,但作为变量定义,它既没有维数,也没有上下界。“数,组变量值”是需要赋给数组各元素的值,各值之间以逗号分,开。,声明的数组变量可以通过以下方式定义:显式定义为Variant类型,如:Dim a as Variant、在定义时不指明类型,如:Dim a、不定义直接使用。,Array函数只适用于一维数组,即只能对一维数组进行初始化,不能对二维或多维数组进行初始化。,数组的下界为零,上界由Array函数括号内的参数个数决定,也可通过函数Ubound获得(其中函数Ubound用于返回数组指定维的上界,Lbound用于返回数组指定维的下界)。,3 数组元素的输入,可以通过For循环及InputBox函数输入。,4 数组元素的输出,数组元素的输出一般for循环与Print方法来实现。,5 举例,【例5.3】编写程序,求一个nm的矩阵中最大值元素所在行和列,并输出其值及行号和列号。,分析:,该题目要求找到矩阵中最大值,可以使用一个二维数组存放这个矩阵,然后依次比较这个数组中的各个元素的值,求得最大值。由于n,m未知,所以必须先通过InputBox函数输入其值。,5.2.4 For Each.Next 循环语句,For Each.Next 循环语句与前面的循环语句For.Next类,似,都是用来执行指定重复次数的循环。但For Each.Next,语句专门用于数组或对象集合中的每一成员。语法格式为:,For Each 成员 In 数组名,循环体,Exit For,Next 成员,说明:,(1)“成员”是一个Variant 变量,它实际上代表数组中每一个元素。,(2)本语句可以对数组元素进行读取、查询或显示,它所重复执行的次数由数组中元素的个数确定。也就是说,分别对数组中的第一个元素、第二个元素、最后一个元素,按序执行一次循环体。For Each.Next 循环语句在不知道数组元素个数时非常有用。,【例5.4】利用For Each.Next 循环语句来求1+2+3+100的值,运行结果如图5.3所示。,Private Sub Form_Click(),Dim a(1 To 100)As Long,sum As Long,Dim n As Integer,sum=0,For n=1 To 100 为数组中的每个元素赋值,a(n)=n,Next n,For Each x In a X为Variant类型的变量,不必赋值,sum=sum+x,Next x,Print 1+2+3+.+100=;sum,End Sub,图5.3,【例5.4】的运行结果,5.3 控件数组,控件数组是由一组相同类型的控件组成,这些控件共用一个相同的控件名字,具有的相同属性设置。数组中的每个控件都有惟一的索引号(Index Number),即下标,其所有元素的Name属性必须相同。,控件数组适用于若干个控件执行操作相似的场合。控件数组共享同样的事件过程。如果某控件数组有4命令按钮,运行时不管单击哪个按钮,就会调用同一个事件过程。,【例5.5】编写一个运行界面如图5.4所示的程序,其中“”,“”,“”,“”为命令按钮控件数组,2个文本框用于输入数据,当单击四个运算符按钮中的任一个,则开始计算,并在Label1,Label2,Label3上分别显示运算符、等号和运算结果。,图5.4【例5.5】运行结果,操作步骤:,(1)用户界面设计,本例中“”,“”,“”,“”为命令按钮控件数组,其建立过程与【例5.2】不同,具体步骤如下:,在窗体上画出的所有的数组元素控件;,先选中其中一个控件,将其激活;,在属性窗口中选择“名称”属性,并键入控件的名称“cmdopt”;,对每个要加到数组中的控件重复,步,键入与第步中相同的名称。,当对第二个控件键入与第一个控件相同的名称后,VB将显示,一个对话框,询问是否确实要建立控件数组。单击“是”将建,立控件数组(单击“否”则放弃建立操作)。,(2)编写代码,具体的运算是通过命令按钮完成的,本题中的命令按钮是,一控件数组,所以它们适用同一过程,具体的数组元素通过,控件数组的index属性来区分,实现过程如下:,Private Sub cmdopt_Click(Index As Integer),Label1.Caption=cmdopt(Index).Caption,Label2.Caption=,Select Case Index 通过Index的值决定执行哪一个按钮操作,Case 0,Label3.Caption=Val(Text1.Text)+Val(Text2.Text),Case 1,Label3.Caption=Val(Text1.Text)-Val(Text2.Text),Case 2,Label3.Caption=Val(Text1.Text)*Val(Text2.Text),Case 3,If Val(Text2.Text)=0 Then,MsgBox 除法错误!,vbCritical,出错,Else,Label3.Caption=Val(Text1.Text)/Val(Text2.Text),End If,End Select,End Sub,通过本例,希望读者注意以下知识点:,控件数组是针对控件建立的,因此与普通数组的定义不一样。可以通过两种方法来建立控件数组:一种是【例5.5】也就是本例中使用的方法,还有一种是【例5.2】中使用的方法,注意具体方法的使用;,为了区分控件数组中的各个元素,Visual Basic把下标值传送给一个过程。本例中,单击上述控件数组中的任意命令按钮时,调用的事件过程如下:,Private Sub cmdopt_Click(Index As Integer),.,End Sub,通过按钮的属性Index确定用户按下了哪个按钮,这时在对应的过程中进行有关的编程。,在编写代码的过程中,要对问题进行全面的考虑,如本例中,在进行除法运算时不能出现除数为“0”的操作,所以对这种情况要做相应的处理。,5.4.1 直线控件(Line),5.4.2 形状控件(Shape),5.4 直线(Line)与形状(Shape),5.4.1 直线控件(Line),1、用途,Line控件用于在窗体、框架或图片中画直线,主要用于修,饰。通过设置Line控件的属性,可以产生不同风格、不同颜,色的线条。,2、重要属性,(1)x1,x2,y1,y2属性,用来设定一条直线的两个端点坐标,即(x1,y1)和,(x2,y2)。在运行时,可以通过改变x1,x2,y1,y2的属性来,移动它或调整它的大小。,(2)BorderWidth属性,用来设定直线的粗细。其值是一个整数值,默认为1.,(3)BorderColor属性,用来设定直线的颜色,默认值为黑色。,(4)BorderStyle属性,用来设定直线的类型。设置值所对应的线型如下【表5.3】,所示:,设 置 值,线 型,0-Transparent,透明,1-Solid,实线(缺省),2-Dash,虚线,3-Dot,点线,4-Dash-Dot,点划线,5-Dash-Dot-Dot,双点划线,6-InsideSolid,内收实线,【例5.6】制作一个5色闪烁彩灯。窗体中有五个直线控件和1个计时器,界面设计如图5.5(a)所示。每一直线控件表示1盏灯。程序运行时,每盏灯分别以各种颜色(红、蓝、黄、绿、青)交换变化,形成闪烁效果。,图5.5(a)例5.6运行结果,操作步骤:,(1)设计用户界面,设置初始界面如图5.5(b)所示,将直线放置在,合适的位置,调整其长度。设置窗体上所用的五条直,线和1个Timer控件的属性。,图5.5(b)例5.6初始界面,(2)编写代码,分析:题目要求每一个控件表示1盏灯,程序运行时,,每盏灯分别以不同的颜色,在不同的时刻交换变化,这一功,能通过Timer事件来实现。不同时间段的变化用全局变量控,制,显示不同的效果。,(3)运行程序,验证运行结果,程序运行后,出现如图5.5(a)所示运行界面,五个不,同颜色的线条从左至右在不同时刻与白色交替显示。(思考:,如将本题目中的5个Line控件用一Line控件数组来实现,如,何操作,),说明:,本题对线条颜色的设置是在程序运行时,通过使用,VB颜色常量来实现的。VB颜色符号常量与常量值的,对应如表5.5所示。,表5.5 VB颜色常量,常量,值,说明,VBBlack,&H0,黑,VBRed,&HFF,红,VBGreen,&HFF00,绿,VBYellow,&HFFFF,黃,VBBlue,&HFF0000,蓝,VBMagenta,&HFF00FF,紫红,VBCyan,&HFFFF00,青色,VBWhite,&HFFFFFF,白,5.4.2 形状控件(Shape),1、用途,Shape控件可以用来画矩形,正方形,椭圆,圆,圆角矩形及圆角正方形,默认为一个矩形,通过设置其Shape属性可以画出多种图形。,2、重要属性,(1)Shape属性,Shape属性用于设定几何图形的类型,其值与对应的,几何类型如表5.6所示:,Shape属性值,几何类型,0-Rectangle,矩形(默认值),1-Square,正方形,2-Oval,椭圆形,3-Circle,圆形,4-RoundedRectangle,圆角矩形,5-RoundSquare,圆角正方形,表5.6 Shape属性值与对应的几何类型关系表,(3)FillStyle属性,表示形状内的填充格式。其值与对应的填充格式如表5.7所示。,表5.7 FillStyle属性设置,FillStyle属性值,对应的含义,0-Solid,实心,1-Transparent,透明,2-HorizontalLine,水平线,3-VerticalLine,垂直线,4-UpwardDiagonal,左上对角线,5-DownwardDiagonal,右下对角线,6-Cross,交叉线,7-DiagonalCross,对角交叉线,(2)BorderWidth属性,表示Shape控件边框的宽度。其值是一个整数,默认为1。,(4)FillColor属性,表示形状内的填充格式颜色,当FillStyle属性为1时,该属性无效。,(5)BorderColor属性,用来设置边框的颜色,默认值为黑色。,5.5.1 列表框(ListBox),5.5.2 组合框控件(ComboBox,),5.5 列表框(ListBox)与组合框(ComboBox),5.5.1 列表框(ListBox),1、用途,列表框控件常用来显示一个项目的列表如【例,5.1】,用户可从中选择一项或多项,如果项目总数,超过了列表框可显示的项目数,列表框会自动添加,滚动条,以方便用户以滚动的方式来选择列表框项。,列表框最主要的特点是只能从其中选择,不能直接,修改其中的内容。,2、重要属性,(1)Columns属性,该属性用来确定列表框的列数。其属性设置值及相应功,能如下:,0(默认值);以单列的方式显示列表项,垂直滚动列表项。,1n:以多列的方式显示列表项,水平滚动列表项。,图5.6为Columns属性取不同值时列表框的显示效果。,图5.6 设置Columns属性,(,2)List属性,该属性用于设置或返回列表项的内容。可以直接在属性,窗口中输入,输入一个列表项以后按“Ctrl+Enter“,可紧接着,输入下一项。图5.7为设置List属性的属性窗口。,图5.7 List属性的属性窗口,(3)MultiSelect 属性,该属性用于设置一次可以选择的列表项数。对于一个标准列表框,该属性的设置值决定了用户能否在列表框中进行多项选择。MultiSelect属性的设置值见表5.8。,属性,描述,0-None,每次只能选择一项,如果选择另一项则会取消对前一项的选择。此为系统默认值,1-Simple,可以同时选择多个列表项,后续的选择不会取消前面的所选项。可以用鼠标或空格键进行选择或取消,2-Extended,可以选择指定范围内的列表项。其方法是:按下Shift键连续选择;按下Ctrl不连续选择多项,表5.8 MultiSelect 属性设置,(,4)Text属性,返回程序运行时用户所选择项目的文本内容,等于,List(ListIndex)。,(5)Style属性,该属性用于确定列表框的外观,只能在设计时设置。,其取值可以为0-Standard(标准形式)和1-Checked(复选框,形式),区别如图5.8所示。当取值为1时,列表框的,MultiSelect属性只能设置为0。,图5.8 不同外观风格的列表框,(6)ListIndex属性,该属性只能在程序中设置或引用。ListIndex 值表示执行是,选中的列表项序号。如果未选中任何项,则ListIndex的值-1。,(7)Sorted属性,指定列表部分项目是否按字母表的顺序排列,True-排,序,False-不排序。,3、事件:,列表框接收Click和DblClick事件,但有时不用编,写Click事件过程代码,而是当单击一个命令按钮或,发生DblClick事件时,读取Text属性(此属性的值为,最后一次选中的表项的文本,不能直接修改text属性,。,4、常用方法,(1)AddItem方法,该方法用于在程序运行时向列表框增加一个列表项,其使,用格式为:,列表框名.AddItem 要增加的列表项,列表项序号,(2)RemoveItem方法,该方法用于删除列表框中指定的列表项,其使用格式为:,列表框名.RemoveItem 列表项序号,(3)Clear方法,该方法用于清除列表框中的所有列表项,执行该方法后,,列表框的ListCount将被设置为0.其使用格式为:,列表框名.Clear,例如,要清除列表框List1中的全部内容,则实现的语句如下:,List1.Clear,【例5.7】编写一个能对列表框进行项目添加、修改和删除操作的应用程序,如图5.9所示。因为不能直接对列表框中的内容进行添加、修改和删除操作,所以利用了一个文本框。列表框(Lstbooks)的项目在Form_Load中用Additem方法添加。添加(Cmdadd)按钮的功能是将文本框中的内容添加到列表框,删除(Cmddel)按钮的功能是删除列表框中选定的项目。如果要修改之后再按修改确定(Cmdmod_ok)按钮更新列表框。初始时,修改确定按钮是不可选的,即它的Enabled属性为False。,图5.9【例5.7】运行结果,分析:,主要事件过程是Form_Load()和几个按钮的Click,事件。该Form_Load事件要求完成:向列表框中添,加列表项;其它几个按钮分别用来实现添加,删除,,修改等功能,主要使用的AddItem和RemoveItem方,法。,本例主要是对列表框控件的综合应用,在使用过程读者应注意掌握以下知识点:,列表框常用属性的使用:如List属性、Index属性、Text属性和ListIndex属性的应用;,列表框常用方法的使用:如把一个项目加入列表框的AddItem方法和从列表框中除去一个项目所使用的RemoveItem方法。,在编写代码时,根据实际情况考虑命令按钮可操作的条件和环境,进行相应的设置使程序的操作界面更接近Windows用户界面,5.5.2 组合框控件(ComboBox),1、用途,组合框既可以在控件的文本框部分输入信息,也,可以在控件的列表框部分选择项目。它兼有文本框和列表框,两者的功能。当用户选定某项后,该项内容自动装入文本框,中。组合框也具有自动添加滚动条的功能。,2、重要属性,除了MultiSelect属性和Selected属性是列表框特有的属,性外,列表框的其它属性基本上都可用于组合框,此外,,Style是组合框特有的属性,用于设置组合框的外观风格,,不同取值外观如图5.10所示。,图5.10 不同风格的组合框,(1)Style 属性取值为0:,下拉组合框(是默认的形式),程序运行时其下的列表框并不显示,只有在用户单击了其下拉箭头后才能显示。这种形式在选择时既可以用键盘直接在文本框内输入,也可以打开列表框后进行选择。,(2)Style 属性取值为1:,简单组合框,在任何时候都显示其项目列表,因此没有下拉箭头。可以直接输入也可以在其下拉列表框中选择,这种格式一般使用不多。,(3)Style 属性取值为2:,下拉列表框形式与下拉组合框相同,但与下拉组合框不同的是,它只能打开项目列表后选择列表中的项目,而不能直接在文本框中输入。这种格式,用户不能随意更改只能选择。,3、常用事件,组合框所响应的事件信赖于其Style属性。当Style,属性值为1才能接收DblClick事件,其他两种组合框,可以接收Click事件和DropDown事件。当Style值为,0和为1时,可以在编辑区输入文本,当输入文本时,可以触发Change事件。一般情况下,用户选择列表,项之后,只需要读取组合框的Text属性。,4、常用方法,列表框的Additem,Clear和RemoveItem方法适用于组合框,其用法与在列表框中一样。,5、应用实例,【例5.8】用简单组合框代替【例5.6】中的列表框和文本框,实现其“添加”,“删除”和“修改“功能。运行结果如图5.11所示:,本章小结,本章学习了一个重要概念-数组,主要介绍数组的定义、数组元素的引用、数组的输入/输出以及常用的一些基本操作。数组是有序的数据的集合。在其他语言中,数组中的所有元素属于同一个数据类型,而在VB中,一个数组中的元素可以是相同类型的数据,也可以是不同类型的数据。VB中数组包括静态数组和动态数组,应重点掌握它们的使用方法及区别。本章还学习了常用控件ListBox、ComBox、Shape和Line。其中ListBox和ComBox常用于从多个项目中进行选择;Shape和Line常用来修饰美化窗体。对于以上提到的控件要求读者掌握其常用属性,重要方法以及主要的事件的使用。,
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服