
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)给他注销掉。
你应用控件数组你可以先在窗体上加一个Command
然后把他的index
属性改为0
要添加10个按钮就这样写
Private
Sub
Form_Load()
For
i
=
1
To
10
Load
Command1(i)
Command1(i).Top
=
Command1(i
-
1).Top
+
Command1(0).Height
Command1(i).Visible
=
True
Next
事件如下
Private
Sub
Command1_Click(Index
As
Integer)
MsgBox
Index
End
Sub
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)