了解子窗体
子窗体是指插入到其他窗体中的窗体。 主要窗体称为主窗体,窗体中包含的窗体称为子窗体。 窗体/子窗体的组合有时被称为分层窗体、大纲/细节窗体或父/子窗体。
要显示具有一对多关系的表或查询中的数据时,使用子窗体特别有效。 一对多关系是指两个表之间的关联,其中主表中每个记录的主键值对应于相关表中许多记录的一个或多个匹配字段的值。 例如,可以创建一个显示雇员数据的窗体,并包含显示每个雇员的订单的子窗体。 “雇员”表中的数据是关系的“一”端。 “订单”表中的数据是关系的“多”端(每个雇员都可以拥有多个订单)。
1. 主窗体显示来自关系的“一”端的数据。
2. 子窗体显示来自关系的“多”端的数据。
主窗体和子窗体以这种形式链接在一起,这样,子窗体只会显示与主窗体中当前记录有关的记录。 例如,当主窗体显示陶湘的信息时,子窗体只会显示她的订单。 如果窗体和子窗体未链接在一起,则子窗体会显示所有订单,而不只是陶湘的订单。
下表定义了与子窗体关联的部分术语。 如果您按照本文提及的过程操作,则大部分细节问题将由 Access 处理,但是,如果您需要在以后进行修改,则了解幕后的操作将非常有用。
术语
定义
子窗体控件
将一个窗体嵌入另一窗体的控件。 您可以将子窗体控件看作是另一对象在数据库中的“视图”,不管这个对象是表、查询还是另一个窗体。 您可以通过子窗体控件提供的属性将控件中显示的数据链接到主窗体上的数据。
“源对象”属性
确定在控件中显示什么对象的子窗体控件属性。
数据表
以行和列的简单形式显示数据,与电子表格非常相似。 当子窗体控件的源对象为表或查询,或者当其源对象是“默认视图”属性设置为“数据表”的窗体时,该控件将显示数据表。 在这些情况下,子窗体有时称为数据表或子数据表,而不称为子窗体。
“链接子字段”属性
该子窗体控件属性指定子窗体中的哪个或哪些字段将子窗体链接到主窗体。
“链接主字段”属性
该子窗体控件属性指定主窗体中的哪个或哪些字段将主窗体链接到子窗体。
注意:
为达到最佳效果,在按照本文中的过程操作前,应当先建立表关系。 这使 Access 可以自动在子窗体与主窗体之间创建链接。 若要查看、添加或修改数据库中表之间的关系,请在“ 数据库工具” 选项卡上的“ 关系”组中,单击“ 关系”。
当子窗体控件将某个窗体作为其源对象时,它将包含您置于该窗体上的字段,并且可以将其视为单个窗体、连续窗体或数据表。 使子窗体基于窗体对象的一个优点是,您可以向子窗体中添加计算字段,如“[数量] * [单价]”。
可以通过创建源对象为表或查询的子窗体控件,向窗体中插入数据表或数据透视图。 有关详细信息,请参阅将相关数据添加到窗体而不创建子窗体部分。
返回页首