我在ms访问中有一个带有许多组合框的表单。我想在cb有焦点时查看下拉选项。我可以使用me.cboboxname.dropdown单独完成这项工作。我可以创建一个模块或代码,在每次有焦点时为每个cbo框执行这项工作吗?
使用类,您可以在一个表单中将事件处理程序分配给所有组合框。
在一个单独的类模块中:
类名:Class1
Public WithEvents cmb As Access.ComboBox
Private Sub cmb_GotFocus()
cmb.DropDown
End Sub
表单类模块:
Private collEventHandlers As Collection
Private Sub Form_Load()
Set collEventHandlers = New Collection
Dim ctl As Access.Control
Dim eventHandler As Class1
For Each ctl In Me.Controls
If TypeOf ctl Is Access.ComboBox Then
Set eventHandler = New Class1
Set eventHandler.cmb = ctl
colleventHanlers.Add eventHandler
ctl.OnGotFocus = "[Event Procedure]"
End If
Next
End Sub