当前位置:  开发笔记 > 编程语言 > 正文

使用VBA将控件添加到Excel用户窗体中的帧

如何解决《使用VBA将控件添加到Excel用户窗体中的帧》经验,为你挑选了1个好方法。

我需要动态创建标签和按钮,然后将它们添加到用户窗体内的框架中.我该怎么做呢?看起来它应该比实际更容易.



1> Jon Fournier..:

以下代码演示了如何使用控件动态填充用户窗体中的帧...

在我使用的表单中,我有一个名为Frame1的帧控件,因此在UserForm_Initialize中,您调用Frame1.Controls.Add将控件嵌入到帧中.您可以设置返回到您在UserForm代码模块中定义的WithEvents控件变量的控件,以便您可以响应您想要的任何控件上的事件...

因此,使用此方法,您需要为您创建的任何控件预先编写所需的任何事件代码...

另请注意,即使顶部,左侧,宽度和高度属性不一定出现在intellisense中,您也可以对控件进行定位和调整大小...

Private WithEvents Cmd As MSForms.CommandButton
Private WithEvents Lbl As MSForms.Label

Private Sub UserForm_Initialize()
    Set Lbl = Frame1.Controls.Add("Forms.Label.1", "lbl1")
    Lbl.Caption = "Foo"
    Set Cmd = Frame1.Controls.Add("Forms.CommandButton.1", "cmd1")
End Sub

Private Sub Cmd_Click()
    Cmd.Top = Cmd.Top + 5
End Sub

Private Sub Lbl_Click()
    Lbl.Top = Lbl.Top + 5
End Sub


为什么``1"`在`add`方法的类名末尾?
推荐阅读
爱唱歌的郭少文_
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有