共计 2271 个字符,预计需要花费 6 分钟才能阅读完成。
首先要明白,子窗体控件 是一个容器,它里面包含着一个 另一个窗体(通过在源对象属性 来设置 里面包含着哪个窗体)。
假如主窗体为 frm 订单,它里面有一个子窗体控件,这个子窗体控件名称叫做 sfmSubform, 它的源对象属性设置为 frm 订单明细,frm 订单明细这个窗体里有一个数量控件。
如果我们在主窗体里想引用子窗体控件,可以使用 me.sfmSubform,这个就指向子窗体控件。
但我们要明白 ” 数量 ” 控件并不是放在子窗体控件里,而是在 frm 订单明细这个窗体里,那们要引用“数量”这个控件,应该如何引用呢?
正确的方法是先找到这个 frm 订单明细这个窗体,如果直接用 frm 订单明细. 数量是不行的,因为 frm 订单明细这个窗体这是单独打开的。它是放在主窗体 frm 订单里面。
所以要这样引用,先找开这个窗体:me.sfmSubform.form,这样就对应到这个子窗体控件里面的窗体了(也是 frm 订单明细这个子窗体)了。
然后,再加上控件名:me.sfmSubform.form. 数量
如果在子窗体里数量控件的相关事件里如果引用父窗体呢(如父窗体里有一个订单号),则需要这样引用:me.parent. 订单号 或 me.parent.form. 订单号都可以。
更多有关父子窗体的语法解释,可参考下面的详细教程
例子:
Mainform 是 主窗体
Subform1 是主窗体里面的子窗体的名称
Subform2 是 Subform1 子窗体里面的子窗体
如果你在主窗体 | 如果你在子窗体 1 | |
要参照一个窗体属性,例如:RecordSource | ||
在主窗体 | Me.RecordSource | Me.Parent.RecordSource |
在子窗体 1 | Me!Subform1.Form.RecordSource | Me.RecordSource |
在子窗体 2 | Me!Subform1.Form!Subform2.Form.
RecordSource |
Me!Subform2.Form.RecordSource |
在照控件 | ||
在主窗体 | Me!ControlName | Me.Parent!ControlName |
在子窗体 1 | Me!Subform1.Form!ControlName | Me!ControlName |
在子窗体 2 | Me!Subform1.Form!Subform2.Form!
ControlName |
Me!Subform2.Form!ControlName |
要参照一个控件属性, 例如:Enabled | ||
在主窗体 | Me!ControlName.Enabled | Me.Parent!ControlName.Enabled |
在子窗体 1 | Me!Subform1.Form!ControlName.Enabled | Me!ControlName.Enabled |
在子窗体 2 | Me!Subform1.Form!Subform2.Form!
ControlName.Enabled |
Me!Subform2.Form!ControlName.Enabled |
要参照一个子窗体控件属性, 例如 SourceObject | ||
在主窗体 | N/A | N/A |
在子窗体 1 | Me!Subform1.SourceObject | N/A |
在子窗体 2 | Me!Subform1.Form!Subform2.SourceObject | Me!Subform2.SourceObject |
如果你在子窗体 2 | 不在窗体里 | |
要参照一个窗体属性,例如:RecordSource | ||
在主窗体 | Me.Parent.Parent.RecordSource | Forms!Mainform.RecordSource |
在子窗体 1 | Me.Parent.RecordSource | Forms!Mainform!Subform1.Form.RecordSource |
在子窗体 2 | Me.RecordSource | Forms!Mainform!Subform1.Form!Subform2.
Form.RecordSource |
要参照一个控件 | ||
在主窗体 | Me.Parent.Parent!ControlName | Forms!Mainform!ControlName |
在子窗体 1 | Me.Parent!ControlName | Forms!Mainform!Subform1.Form!ControlName |
在子窗体 2 | Me!ControlName | Forms!Mainform!Subform1.Form!Subform2.
Form!ControlName |
要参照一个控件属性,例如:Enabled | ||
在主窗体 | Me.Parent.Parent!ControlName.Enabled | Forms!Mainform!ControlName.Enabled |
在子窗体 1 | Me.Parent!ControlName.Enabled | Forms!Mainform!Subform1.Form!ControlName.Enabled |
在子窗体 2 | Me!ControlName.Enabled | Forms!Mainform!Subform1.Form!Subform2.
Form!ControlName.Enabled |
要参照一个子窗体控件属性:SourceObject | ||
在主窗体 | N/A | N/A |
在子窗体 1 | N/A | Forms!Mainform!Subform1.SourceObject |
在子窗体 2 | N/A | Forms!Mainform!Subform1.Form!Subform2.
SourceObject |
摘自 http://www.office-cn.net/access-interface/136.html