我有一个用户窗体(frmProgress),它应该用标签显示进程的进度。在一个类模块 (clsProgressForm) 中,我创建了 UserForm,如下所示:
Option Explicit
Public Event UpdateProgress(ByVal str As String)
Private Sub Class_Initialize()
Dim frm As frmProgress
Set frm = New frmProgress
Load frm
frm.Show vbModeless
RaiseEvent UpdateProgress("test")
End Sub
用户窗体包含以下代码:
Option Explicit
Private WithEvents frm As MSForms.UserForm
Private Sub frm_UpdateProgress(ByVal str As String)
lblUpdate.Caption = str
End Sub
然而,用户窗体上的 frm_UpdateProgress 事件永远不会被调用。如何使用事件更新用户窗体?