您的位置首页>业界>

业界问答:什么是控件数组控件数组的概述

导读  控件数组是一组具有相同名称和类型的控件的集合,通过各自的编号***下标***来识别,并且可以共享事件。那么你对控件数组

  控件数组是一组具有相同名称和类型的控件的集合,通过各自的编号***下标***来识别,并且可以共享事件。那么你对控件数组了解多少呢?以下是由小编整理关于什么是控件数组的内容,希望大家喜欢!

  控件数组的概述

  在设计时,有三种办法创建控件数组:更改控件的Index属性、将已有的控件复制到同一窗体中、使多个同类型的控件的名称***Name属性***相同。

  更改Index属性

  选择一个控件,按F4打开“属性”面板,找到“Index”属性,将其更改为一个0和32767之间***包括0和32767***的且未被用于其他控件索引值的整数,即可创建一个以原控件名称为名称的控件数组。

  复制已有控件

  若已有一控件名为Command,右击该控件,单击快捷菜单中的“复制”,再右击控件所在窗体***或其中的一个类似Frame的容器控件***,单击快捷菜单中的“粘贴”,VB会弹出一个对话框,显示“已经有一个控件为 'Command'。创建一个控件数组吗?”单击“是”按钮,就可创建一个名称***Name属性***为“Command”的控件数组,被复制的控件为Command***0***,粘贴的控件为Command***1***。

  使控件名相同

  若已有一控件名为Command,将另一同类型控件的Name属性改为“Command”后,VB也会弹出一个对话框,单击“是”即可创建一控件数组。

  运行时增减对象添加对象

  在VB中,不能在运行时直接创建一个原先不存在的控件数组,但可以使用Load函数为已存在的控件数组添加同类型的控件。

  假设已有一个控件数组名为“Command”,数组中只有一个对象“Command***0***”,在运行时,可以通过下面的代码增加一个对象“Command***1***”。

  PrivateSubCommand_Click***IndexAsInteger***'控件数组中控件的点击事件LoadCommand***1***'添加Command***1***Command***1***.Top=0'将Command***1***移至顶端Command***1***.Visible=True'将Command***1***设置为可见EndSub

  说明:

  此处的Load函数的语法如下:

  Load Object ***Index As Integer***

  Load函数参数

  参数

  描述

  Object

  必选,对象表达式,要添加控件的控件数组名称。

  Index

  必选,数值表达式,0~32767的一个整数,被添加的控件在控件数组中的索引值***Index属性***,该值必须未被引用。

  运行时在一个控件数组中添加了新的控件后,新控件除Index、TabIndex和Visible属性外,其余属性与该控件数组中Index属性最小的控件的相应属性完全相同。而Index属性在Load函数中指定,TabIndex属性取VB规定的默认数值***比其他任何控件都大***,Visible为False。所以需要改变新控件的Left或Top,以及Visible属性后才能看到它。

  这里的代码仅设计用于添加Command***1***,即使Command中的按钮被点击两次,也不能添加Command***2***,而是会返回“对象已经加载”的错误。为了不断添加控件,可以使用下面的代码。

  PrivateSubCommand_Click***IndexAsInteger***'控件数组中控件的点击事件IfCommand.UBound=32767ThenExitSubLoadCommand***Command.UBound+1***'添加控件Command***Command.UBound***.Top=Command.UBound*150'移动新控件Command***Command.UBound***.Visible=True'将新控件设置为可见EndSub

  控件数组的UBound属性返回该控件数组中控件的最大下标***索引值***,添加索引值为Command.UBound+1***不大于32767***的控件数组元素可以保证不发生“对象已经加载”的错误。但是,由于控件数组中每个控件的索引值并不一定是连续的,即可以只添加Command***1***和Command***3***而不添加Command***2***,所以即使控件数组最大索引值为32767,该控件数组也不一定有32767个对象。

以上就是什么是控件数组控件数组的概述的推荐,相信通过什么是控件数组控件数组的概述这篇文章能帮到你,也欢迎对游戏很感兴趣小伙伴们一起来探讨。

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。