Jon*_*ier 18
以下代码演示了如何使用控件动态填充用户窗体中的帧...
在我使用的表单中,我有一个名为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
Run Code Online (Sandbox Code Playgroud)