您的位置:首页 > 编程语言 > VB

VB编写ActiveX控件时,动态添加控件到某个容器

2014-11-23 23:18 429 查看
网上没找到答案,反复测试代码发现了比较奇葩的事情

将控件添加到顶层容器里面

还是帖代码让大家看看吧

代码如下

Private Sub Command1_Click()
Dim testText As TextBox
' Set testText = UserControl.Controls.Add("VB.TextBox", "testText", UserControl1) '工程中有UserControl1(顶层容器),但代码执行为空值
Set testText = UserControl.Controls.Add("VB.TextBox", "testText", UserControl.Controls(0).Container) '这样又可以添加到顶层容器里面,真搞不清楚为什么
' Set testText = UserControl.Controls.Add("VB.TextBox", "testText", Frame1) '注意这段代码中UserControl不是控件名,是active的主控件
With testText
.Top = 1000
.Left = 1000
.Text = "测试文本框"
.Visible = True
.Locked = True
.Width = 2000
.Height = 375
End With
End Sub


奇葩问题如注释所述
插入结果如图:


如果有大神知道为什么直接通过顶层控件的添加控件会报空值,还望指点迷津
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息