MS Access-创建一个通用子窗体来设置子窗体上控件的属性



我有一个通用Sub,可以从任何表单调用,它将启用所有Tag属性设置为"EnableForReadOnly"的文本框和组合框。我想为Subforms创建一些类似的东西。

Public Sub EnableReadOnlyControls(theForm)
Dim i As Integer
' Cycle through the form's controls,
For i = 0 To theForm.Count - 1
If theForm(i).Tag = "EnableForReadOnly" Then
If TypeOf theForm(i) Is TextBox Then
theForm(i).Locked = False
theForm(i).Enabled = True
ElseIf TypeOf theForm(i) Is ComboBox Then
theForm(i).Locked = False
theForm(i).Enabled = True
End If
End If
Next i

结束子

要从表单中调用此Sub,在表单的OnOpen事件上,我键入以下内容,效果很好:

EnableReadOnlyControls Me

我想为子窗体创建一个类似的通用Sub,但我不确定是否可以用这种通用方式引用子窗体。任何想法都将不胜感激。

我在这里转发安德烈的评论作为答案。谢谢安德烈!

"您可以简单地使用相同的功能。EnableReadOnlyControls Me.SubformControl.Form.或您在子窗体的Open事件中的调用">

示例:我的主窗体上的子窗体控件的名称是frmCounterTopSub,所以我在代码中添加了这一行,它就像一个魅力:

EnableReadOnlyControls Me.frmCounterTopSub.Form

最新更新