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

来源:互联网 发布:linux更改管理员密码 编辑:程序博客网 时间:2024/06/06 00:09

网上没找到答案,反复测试代码发现了比较奇葩的事情

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

还是帖代码让大家看看吧

代码如下

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 WithEnd Sub

奇葩问题如注释所述

插入结果如图:

如果有大神知道为什么直接通过顶层控件的添加控件会报空值,还望指点迷津

0 0
原创粉丝点击