第一种,是最常用的,也是使Vb变得简单的一个优势,就是直接从工具箱中zhidao选择空间,添加到窗体中,还可以选中控件,设置各种专属性,设置好后,就无需再用代码进行设置。
第二种,比较复杂,就是直接用代码添加控件。需要用代码指定控件的大小属、位置等等各种属性,一般在Vb中用的较少。
VB6有一个新功能,可以动态添加控件,不用控件数组:object.Add
(ProgID,
name,
container)
参数说明
Object
必需的。一个对象表达式,其值是“应用于”列表中的一个对象。
ProgID
必需的。一个标识控件的字符串。大多数控件的
ProgID
都可通过查看对象浏览器来决定。控件的
ProgID
是由控件的库和类组成的。
例如,CommandButton
控件的
ProgID
是
VB.CommandButton。在ProgID
与对象浏览器中所显示的不一样的情况下,Visual
Basic
将显示一个包括正确
ProgId
的错误信息。
name
必要的。一个字符串,用来标识集合的成员。
container
可选的。一个对象引用,它指定控件的容器。如果没有指定或为NULL,缺省值为
Controls
集合所属的容器。通过指定该参数,可以把一个控件放置在任何现存的容器控件(如
Frame
控件)中。用户控件或
ActiveX
文档也可以作为一个容器。
举例:
//在picture1上面添加一个commandbutton
Private
Sub
Form_Load()
Form1.Controls.Add
"VB.CommandButton",
"cmdOk",
Picture1
With
Form1.cmdOk
.Visible
=
True
.Width
=
500
.Caption
=
"确认(&Y)"
End
With
End
Sub
当然,我个人觉得更好的办法还是用控件数组,例如现在首先建立一个TextBox控件,并把Index属性改成0(注意,原来是空的,必须写上0)。
然后在程序中任意地方,采用例如Load
TextBox1(1)就可以创建一个新的TextBox对象,通过TextBox1(1)访问。
当然你可以用循环创建指定数量的文本框,在不用的时候记得用
Unload
TextBox1(1)给他注销掉。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)