如何动态创建带事件的控件?
'类模块Class1代码:
Option ExplicitPrivate WithEvents mvarCmBtn As CommandButton
Public Property Set CmBtn(ByVal vData As CommandButton) Set mvarCmBtn = vData End Property Public Property Get CmBtn() As CommandButtonSet CmBtn = mvarCmBtn
End PropertyPrivate Sub mvarCmBtn_Click()
MsgBox mvarCmBtn.Name End Sub '测试窗体代码: Option Explicit Dim a() As Class1Private Sub Command1_Click()
Me.Controls.Remove Me.Controls("cmdobj3") '删除控件 End SubPrivate Sub Form_Load()
ReDim a(5) Dim i As Integer For i = 0 To 5 Set a(i) = New Class1 Set a(i).CmBtn = Me.Controls.Add("VB.CommandButton", "cmdObj" & i) a(i).CmBtn.Visible = True a(i).CmBtn.Top = i * 500 Next i End Sub