我基本上是在创建一个在运行时生成的项目列表。这些项目作为标签列在用户表单上(项目存储在链表中)。对于每个项目,我想添加一个微调按钮,以便可以在列表中上下移动项目。我的旋转按钮创建得很好,我编码的事件不起作用??我不确定我做错了什么。大概是很简单的事情...
这是保存事件的类模块:cls_Spin_Btn
Private WithEvents Spin_Events As SpinButton
Private Sub Spin_Events_SpinUp()
Debug.Print "Hey. Spin button worked."
End Sub
Public Property Set SetNewSpinButtion(newSpinBtn As MSForms.SpinButton)
Set Spin_Events = newSpinBtn
End Property
这是从模块调用的代码:
Function AddRunToForm(f As UserForm, r As ProductionRun, top As Integer) As Integer
Dim Run_SpinBtn As MSForms.SpinButton
Dim spinBtn As cls_Spin_Btn
Set Run_SpinBtn = f.Controls.Add("Forms.SpinButton.1", r.ProdID & "_SBtn", True)
Set spinBtn = New cls_Spin_Btn
With Run_SpinBtn
.top = ProdID_Lbl.top
.Left = 5
.height = 10
.Width = 12
.height = 18
.Visible = True
End With
Set spinBtn.SetNewSpinButtion = Run_SpinBtn
AddRunToForm = ProdID_Lbl.top + ProdID_Lbl.height
End Function
此代码从同一模块中的循环调用,为每个项目创建标签和旋转按钮。我究竟做错了什么?任何帮助将不胜感激。