Access2003中主子窗体的教学研究

2020-12-23 05:45周杰
新一代 2020年14期

周杰

摘 要:主子窗体是窗体中一种较为复杂的窗体。该文对主子窗体的类型和设计方法进行了归纳和总结,使得学生可以轻松掌握主子窗体的设计,实践证明教学效果良好。

关键词:源对象;链接主字段;链接子字段

主子窗体是指一个窗体包含另一个窗体,包含其他窗体的窗体称为主窗体,被包含的窗体称为子窗体。子窗体可以再包含子窗体,构成多级主子窗体结构。主子窗体通常用于显示多个表或查询中的相关联数据,通过改变主窗体中的关键字段值,或通过在主窗体中输入查询信息,在子窗体中自动查找并显示与主窗体关键字相关联的记录。主子窗体是通过子窗体子报表控件实现的,其中子窗体子报表控件的“源对象”属性用于设置子窗体中显示的内容。在“主子窗体设计”的教学过程中,我们发现学生对于什么情况下需要使用主子窗体,以及不同类型的主子窗体之间如何实现相互联动,往往难于掌握。

一、我们在讲解主子窗体时,首先对主子窗体的应用范围进行了分类,再分别针对每种类型设计相应的实现,起到了良好的教学效果。

(一)主子窗体的类型根据主子窗体的应用情况和联动方式,我们将其归纳为三种基本类型。基于主表和子表的主子窗体,基于主表和子表的主子窗体(所谓基于主表和子表的主子窗体,是指主窗体的记录源是一个表或查询,子窗体的记录源是与主窗体记录源相关联的另一个表或查询)。基于查询的主子窗体主要用于查询程序设计。主窗体中包含用于输入查询关键字的文本框和组合框等控件,用户在主窗体中输入要查找的关键字,子窗体自动查找并显示相应的信息。

(二)无关联的主子窗体在这种主子窗体中,主窗体通常作为一个容器。用来放置两个或多个子窗体控件。主子窗体之间无相互关联关系,仅仅是为了在同一界面中显示出来。

二、主子窗体的设计

主子窗体的设计在中,提供了多种方法实现主子窗体,既可以使用窗体向导同时创建主窗体和基于查询的主子窗体子窗体,也可以分别设计主窗体和子窗体后,再将子窗体插入主窗体;在窗体设计视图和数据库窗将数据库窗中的表、查询、窗本实体等对象拖到设计视图,也可以快速創建主子窗体。

(一)基于主表和子表的主子窗体设计基于主表和子表的主子窗体是一种最为常见的主子窗体,在主窗体和子窗体中的控件通常应是绑定型控件,用来表示相应表中的字段内容,其主窗体内容和子窗体内容的联动,需要通过子窗体子报表控件的“链接主字段”和“链接子字段”属性实现。在讲解该类主子窗体时,我们主要通过的窗体向导来实现。重点讲解以下几点:①在启动窗体向导之前,必须建立主表和子表间的联系,其中主表作为主窗体的数据源,子表作为子窗体的数据源。②在向导创建过程中,出现“确定查看数据的方式”时,必须选择通过主表(表关系的一方)查看数据,否则创建的将不是主子窗体。而是单一窗体。③子窗体子报表控件的“链接主字段”和“链接予字段”属性是实现该类主子窗体联动的关键属性,两属性值应分别是实现主表和子表间联系的对应字段。在主窗体和子窗体中,可以不包含显示该字段的控件,而仅仅用其实现主窗体和子窗体的联动。

(二)基于查询的主子窗体设计基于查询的主子窗体主要用于查询程序设计,实现较为复杂,不能使用窗体向导。在讲解该类主子窗体时,我们采用分别设计主窗体和子窗体的方法,在两个窗体均创建完成后,在主窗体设计视图中添加一个子窗体,子报表控件,设置该控件的“源对象”属性为刚创建的子窗体。实际创建时,可以直接将子窗体拖动到主窗体中。系统会自动添加一个子窗体子报表控件,并自动设置该控件的“源对象”属性.我们使用前一种方法主要为加强学生对子窗体,子报表控件和“源对象”属性的理解。在基于查询的主子窗体设计中。需要注意以下几点:①主窗体中的控件通常是非绑定型控件,用于输入或选择要查找的关键信息;子窗体中的控件通常为绑定型控件,根据主窗体中输入的信息,显示查找到的表中字段内容。②在基于查询的主子窗体中。主窗体和子窗体的联动不通过子窗体子报表控件的“链接主字段”和“链接子字段”实现,因此这两个属性无需设置。为了实现这种主子窗体的联动,在设计子窗体时,应将子窗体的“记录源”属性设置为一个参数查询,其中参数名称应与主窗体中输入查找信息的控件名称一致。③用于实现联动的字段可以不在子窗体中显示,而仅仅作为查询条件。

(三)无关联的主子窗体无关联的主子窗体设计较为简单,讲解时,我们采用分别设计各个窗体,然后将设计好的子窗体直接从数据库窗拖动到主窗体设计视图中。

三、结束语

通过对主子窗体类型进行归纳分类,并针对每类主子窗体分别采用不同的设计方法进行实现,不仅使学生掌握了创建主子窗体的各种方法,而且对主子窗体的联动方式有了较深的理解,通过教学实践证明,取得了良好的教学效果。

参考文献:

[1]卢湘鸿,陈洁.数据库与程序设计.北京:电子工业出版社,2009:138.

[2]申石磊,楚艳萍.程序设计.北京:中国科学技术出版社,2009:130.