请参阅" parent"对话框表单中的表单

时间:2017-10-29 16:02:12

标签: ms-access modal-dialog

我有一个带有按钮的表单,可以在对话框模式下打开另一个表单。是否有一个对话框表单属性,其中包含有关打开它的表单的信息?什么像Me.Parrent在sobform?我知道实现这一目标的唯一方法是使用OpenArgs,但希望有更严格的内容......

感谢您的任何建议

SMOK。

1 个答案:

答案 0 :(得分:1)

只要您不打开同一表单的多个变体,Forms集合就是常用的方法,就像古斯塔夫所说的那样。

您可以像这样访问表单对象:

Forms!ParentformName.Form

有许多其他方法可以引用变量,June7指出了最常见的方法。我更喜欢子表单对象中的全局变量

在subfrom:

Public Parentform As Form

在主表格上:

Private Sub OpenForm
    DoCmd.OpenForm "myForm"
    Forms!myForm.Parentform = Me.Form
End Sub

或者,打开一个依赖于主窗体的对话框:

Private dialogForm As Form
Private Sub OpenForm
    Set dialogForm = New Form_myForm
    dialogForm.Parentform = Me.Form
    dialogForm.SetFocus
End Sub

请注意,最后一种方法有几个优点,例如支持对话框表单的多个实例,以及能够从子表单执行多项操作(特别是如果您将Private dialogForm As Form更改为Private WithEvents dialogForm As Form允许您检测对话框何时关闭,获取在对话框中输入的值,在主窗体上处理它们等等。它确实要求dialogForm具有表单模块。)