增加控件ADD语句的几个问题?

onlytornado 2004-10-28 03:17:05
Add方法在Controls集合中添加一个控件并返回一个对控件的引用。Add方法的语法为:

Object.Add(ProgID,Name,Container)

其中Object为要添加元素的集合,ProgID为标示的字符串.可通过对象浏览器来确定,例如,CommandButton控件的ProgID是VB.CommandButton. Name是控件的名称. Container是包含添加控件的容器,可以为form或Frame控件等等。
1,有谁可以发一下VB中各控件的ProgID?
2,利用ADD语句增加控件数组,如何使增加出来的控件按顺序排列。例:增加15个控件,分三列显示.
...全文
79 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
onlytornado 2004-11-02
  • 打赏
  • 举报
回复
没人回答,只好结贴
onlytornado 2004-10-29
  • 打赏
  • 举报
回复
可以增加数组的,请看下面的例子
Private Sub Command1_Click()
Call CreateControls(Form1, "VB.PictureBox", "VB.TextBox", 20)
End Sub

Sub CreateControls(oContainer As Object, ByVal sParentCtrlName As String, ByVal sChildCtrlName As String, ByVal lCtrlCount As Long)
On Error Resume Next
Dim i As Long
Dim oParentCtrl As Object, oChildCtrl As Object
For i = 1 To lCtrlCount
Set oParentCtrl = Controls.Add(sParentCtrlName, "pctrl" & CStr(i), oContainer)
With oParentCtrl
.Visible = True
.Move i * 250, i * 250
End With

Set oChildCtrl = Controls.Add(sChildCtrlName, "cctrl" & CStr(i), oParentCtrl)
With oChildCtrl
.Visible = True
.Move 0, 0
End With
Next
End Sub
wangsitao 2004-10-28
  • 打赏
  • 举报
回复
add语句不能增加控件数组
要用的话要这样
在FORM上放一个LABEL控件
LABEL控件的NAME=Label1
然后把LABEL控件的INDEX改为0

再添加以下代码,运行你就能看到两个LABEL控件了

Private Sub Form_Load()
Load Label1(1)
Label1(1).Left = Label1(0).Left + Label1(0).Width
Label1(1).Visible = True
End Sub


要删除控件的话用
UNLoad Label1(1)
leolan 2004-10-28
  • 打赏
  • 举报
回复
按F2調出Object Browse --> 選擇VB後就可以看到所有的ProgID
GGL123 2004-10-28
  • 打赏
  • 举报
回复
add语句好像不能增加控件数组。帮你顶。

1,451

社区成员

发帖
与我相关
我的任务
社区描述
VB 控件
社区管理员
  • 控件
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧