如何vb中动态添加控件

如何vb中动态添加控件,第1张

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)给他注销掉。

动态控件的创建过程:

1.建立控件ID号:

ID号是控件的标识,创建控件前必须先为它设置一个ID号。

打开资源中的“String Table”,在空白行上双击鼠标,这时会d出一个ID属性对话框,在其中的ID编辑框中输入ID,如:IDC_MYBUTTON,在Caption中输入控件标题或注解(注:Caption框不能为空,为空会导致创建失败),这里我输入的是按钮上要显示的文字--动态按钮。

2.建立控件对象:

不同种类的控件应创建不同的类对象:

·按钮控件 CButton (包括普通按钮、单选按钮和复选按钮)

·编辑控件 CEdit

·静态文本控件 CStatic

·标签控件 CTabCtrl

·旋转控件 CSpinButtonCtrl

·滑标控件 CSliderCtrl

·多信息编辑控件 CRichEditCtrl

·进度条控件 CProgressCtrl

·滚动条控件 CSrcollBar

·组合框控件 CComboBox

·列表框控件 CListBox

·图像列表控件 CImageCtrl

·树状控件 CTreeCtrl

·动画控件 CAnimateCtrl

先在窗体设计过程中手工增加一个picture1,index属性设定为0

程序中要增加一个控件,就用:

Load Picture1(i)'i为

,1-n 最好顺序递增

Picture1(i).Visible = True '这句非常重要,否则新增的图片框看不到

Picture1(i).Move x, y, w, h '设定图片框的坐标和大小


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11889224.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存