《(9.33)--VB面向对象程序设计控件数组.ppt》由会员分享,可在线阅读,更多相关《(9.33)--VB面向对象程序设计控件数组.ppt(12页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第5章 数组25.4.1 控件数组的概念控件数组的概念 控件控件数数组由一批由一批类型相同的控件型相同的控件组成,即数成,即数组中的元素是控件。控件中的元素是控件。控件数数组具有以下特点:具有以下特点:(1)控件数控件数组中的所有元素都必中的所有元素都必须是相同是相同类型的控件。型的控件。(2)控件数控件数组中的控件具有一个相同的控件名称。中的控件具有一个相同的控件名称。(3)控件数控件数组中的控件除名称属性中的控件除名称属性值外,其他属性外,其他属性值可以互不相同。可以互不相同。(4)控件数控件数组中的元素是通中的元素是通过控件的控件的Index属性属性进行区分的。行区分的。Index的的取
2、取值范范围为032767。控件数。控件数组元素的下元素的下标可以不可以不连续。(5)控件数控件数组中的所有控件共用相同的事件中的所有控件共用相同的事件过程。控件数程。控件数组的事件的事件过程名后的一程名后的一对圆括号内有一个括号内有一个Index参数,参数,该参数用来确定是哪一个参数用来确定是哪一个控件控件发生了生了该事件。事件。5.4 控件数组控件数组35.4.2 控件数组的建立控件数组的建立控件控件数数组的建立有两种方法:一是在的建立有两种方法:一是在设计阶段通段通过操作建立;二是在运行操作建立;二是在运行阶段通段通过程序建立。程序建立。1.在在设计阶段建立段建立可可采用以下采用以下3种方
3、法建立(以建立元素种方法建立(以建立元素为命令按命令按钮的控件数的控件数组为例)。例)。方法方法1:通:通过复制、粘复制、粘贴的方式的方式操作步操作步骤如下:如下:(1)先在窗体上建立第先在窗体上建立第1个控件个控件Command1。(2)选择“编辑”菜菜单下的下的“复制复制”命令,或命令,或单击工具工具栏中的中的“复制复制”按按钮,然后,然后选择“编辑”菜菜单下的下的“粘粘贴”命令,或命令,或单击工具工具栏中的中的“粘粘贴”按按钮,弹出如出如图所示的所示的对话框,提示是否框,提示是否创建一个控件数建一个控件数组。5.4 控件数组控件数组4(3)单击“是是”按按钮,则在窗体左上角添加了第在窗体
4、左上角添加了第2个命令按个命令按钮,该按按钮的名称属的名称属性与第性与第1个命令按个命令按钮的名称属性相同(的名称属性相同(Caption属性也相同),都是属性也相同),都是Command1。可根据界面。可根据界面设计要求,将第要求,将第2个命令按个命令按钮移移动到适当的位置。到适当的位置。(4)继续单击工具工具栏中的中的“粘粘贴”按按钮,则会建立第会建立第3个、第个、第4个、个、第、第n个命个命令按令按钮。注意:当建立第注意:当建立第1个命令按个命令按钮时,其,其Index属性属性值为空;建立第空;建立第2个命令按个命令按钮后,第后,第1个命令按个命令按钮的的Index属性属性值为0(默(默
5、认值),而第),而第2个命令按个命令按钮的的Index属性属性值为1。随着后面命令按。随着后面命令按钮的建立,的建立,Index属性属性值按步按步长1增加。增加。5.4 控件数组控件数组5方法方法2:给多个控件取相同的名称多个控件取相同的名称操作步操作步骤如下:如下:(1)在窗体上建立程序所需要的所有的命令按在窗体上建立程序所需要的所有的命令按钮,如,如Command1、Command2和和Command3。(2)确定第确定第1个命令按个命令按钮的名称属性的名称属性值为控件数控件数组名,如名,如Command1。然后将。然后将第第2个命令按个命令按钮的名称属性的名称属性值改改为同一名称,同同一
6、名称,同样会会弹出提示出提示创建控件数建控件数组对话框。框。(3)单击“是是”按按钮,则第第1个命令按个命令按钮和第和第2个命令按个命令按钮成成为控件数控件数组的元素,的元素,同同时第第1个命令按个命令按钮的的Index属性属性值为0,第,第2个命令按个命令按钮的的Index属性属性值为1。(4)再将第再将第3个命令按个命令按钮的名称属性的名称属性值改改为控件数控件数组名,完成控件数名,完成控件数组的建立。的建立。用用这种方法建立的控件数种方法建立的控件数组,元素只有名称属性相同,除,元素只有名称属性相同,除Index属性取不同属性取不同值外,其他属性保持不外,其他属性保持不变。5.4 控件数
7、组控件数组6方法方法3:给控件控件设置一个置一个Index属性属性值操作步操作步骤如下:如下:(1)先在窗体上建立第先在窗体上建立第1个命令按个命令按钮Command1。(2)在属性窗口在属性窗口输入一个入一个Index属性属性值。(3)用方法用方法1或方法或方法2建立控件数建立控件数组中的其他命令按中的其他命令按钮,此,此时,新建立的第,新建立的第1个个命令按命令按钮的的Index属性属性值为0,不会出,不会出现提示提示创建控件数建控件数组对话框。框。用用这种方法建立的控件数种方法建立的控件数组,其元素的,其元素的Index属性属性值可以不可以不连续。5.4 控件数组控件数组72.在运行在运
8、行阶段建立段建立 程序运行程序运行时,可以使用,可以使用Load语句向已有的控件数句向已有的控件数组中添加新的控件数中添加新的控件数组元素,也可以使用元素,也可以使用Unload语句句删除控件数除控件数组中的元素。其一般格式中的元素。其一般格式为:Load 控件数控件数组名名(下下标)UnLoad 控件数控件数组名名(下下标)功能:功能:Load语句向已有的控件数句向已有的控件数组中添加一个指定下中添加一个指定下标的控件;的控件;Unload语句从已有的控件数句从已有的控件数组中中删除一个指定下除一个指定下标的控件。的控件。5.4 控件数组控件数组8说明:明:(1)控件数控件数组名就是控件的名
9、称,如名就是控件的名称,如Command1。(2)下下标就是就是Index属性属性值,不能与控件数,不能与控件数组中其他元素的下中其他元素的下标相同。相同。(3)在使用在使用Load语句之前,控件数句之前,控件数组必必须在在设计模式下用前述方法建立。模式下用前述方法建立。(4)使用使用Load语句添加的新控件是不可句添加的新控件是不可见的,即其的,即其Visible属性属性值为False。可以在添加之后,将可以在添加之后,将Visible属性属性值设置置为True使其使其显示出来。示出来。(5)使用使用UnLoad语句只能句只能删除用除用Load语句添加的控件,不能句添加的控件,不能删除在除在
10、设计模模式下建立的控件。式下建立的控件。5.4 控件数组控件数组9 在运行在运行阶段通段通过程序建立控件数程序建立控件数组的操作步的操作步骤如下:如下:(1)在窗体上先建立第在窗体上先建立第1个控件数个控件数组元素元素,如,如Command1,将其将其Index属性属性值设置置为0。(2)在程序中使用在程序中使用Load语句添加其余的各个控件数句添加其余的各个控件数组元素,其元素,其Index属性属性值按步按步长1增增值。也可以根据程序的需要,用。也可以根据程序的需要,用UnLoad语句句删除其中的某些元素。除其中的某些元素。(3)根据程序的需要,可以将新添加的控件数根据程序的需要,可以将新添
11、加的控件数组元素的元素的Visible属性属性值设置置为True,使其,使其显示出来。示出来。(4)根据界面根据界面设计要求,要求,设置新添加控件数置新添加控件数组元素的元素的Left和和Top属性属性值,以确,以确定定这些控件在窗体上的位置。些控件在窗体上的位置。5.4 控件数组控件数组105.4.3 控件数组的应用控件数组的应用例例5.6 在窗体上添加在窗体上添加1个文本框和个文本框和3个命令按个命令按钮,将文本框的,将文本框的Text属性属性值设置置为空,空,分分别将将3个命令按个命令按钮的的Caption属性属性值设置置为“黑体黑体”、“宋体宋体”和和“楷体楷体”。程序运。程序运行后,
12、分行后,分别单击“黑体黑体”、“宋体宋体”和和“楷体楷体”命令按命令按钮,则文本框中的字体文本框中的字体变为相相应的黑体、宋体和楷体。要求添加的的黑体、宋体和楷体。要求添加的3个命令按个命令按钮为控件数控件数组。分析分析:本例中的:本例中的3个命令按个命令按钮如果不是控件数如果不是控件数组,则需要需要编写写3个个单击命令按命令按钮的事件的事件过程。建立程。建立为控件数控件数组后,由于控件数后,由于控件数组中的所有控件共用相同的事件中的所有控件共用相同的事件过程,因此只需程,因此只需1个个单击命令按命令按钮的事件的事件过程即可。程即可。该事件事件过程通程通过Index参数得参数得到一个控件数到一个控件数组元素的下元素的下标值,以确定当前,以确定当前单击的是哪一个命令按的是哪一个命令按钮。5.4 控件数组控件数组11解法1:在设计阶段建立控件数组。用上述3种方法之一建立命令按钮控件数组。5.4 控件数组控件数组12解法解法2:在运行:在运行阶段建立控件数段建立控件数组。在在窗体上先添加第窗体上先添加第1个命令按个命令按钮,即,即“黑体黑体”命令按命令按钮,并将其,并将其Index属性属性值设置置为0,如,如图所示。程序运行后,用所示。程序运行后,用Load语句自句自动添加添加“宋体宋体”和和“楷体楷体”命令命令按按钮。5.4 控件数组控件数组