870 likes | 975 Views
数据库应用基础. 第 11 章 窗体. 第 11 章 窗体. 11.1 窗体概述. 11.1.1 窗体的功能. 由于真正利用数据库系统进行实际业务处理的用户是通过窗体来完成与数据库之间的数据交互的,所以窗体在数据库的应用中有着非常重要的作用。 窗体的主要功能体现在以下几个方面: 数据显示 数据输入与编辑 应用程序流控制 信息显示和数据打印. 11.1.2 窗体的视图. 在 Access 中,窗体主要以三种形态出现,即: 窗体视图 运行 布局视图 设计 + 运行 设计视图 设计. 布局视图.
E N D
数据库应用基础 第11章 窗体
11.1.1 窗体的功能 • 由于真正利用数据库系统进行实际业务处理的用户是通过窗体来完成与数据库之间的数据交互的,所以窗体在数据库的应用中有着非常重要的作用。 • 窗体的主要功能体现在以下几个方面: • 数据显示 • 数据输入与编辑 • 应用程序流控制 • 信息显示和数据打印
11.1.2窗体的视图 • 在Access中,窗体主要以三种形态出现,即: • 窗体视图运行 • 布局视图设计+运行 • 设计视图设计
布局视图 • 布局视图是用于修改窗体的最直观的视图,可用于对窗体进行几乎所有需要的更改,并可以在修改的同时看到数据。在布局视图中,可进行设置控件大小、重新排列控件、放置新的控件、设置窗体及其控件的属性等任务。 • 并且,布局视图中窗体实际正在运行,因此,看到的数据与它们在窗体视图中的显示外观非常相似。此时对窗体的修改,能够立即看到窗体修改后的运行状态。
窗体视图 • 窗体视图为窗体运行时的形态,是窗体设计成果的最终表现形式。 • 与布局视图所不同的是,窗体视图中不允许进行对窗体及窗体中所包含的控件的形态和属性做任何修改。
设计视图 • 设计视图提供了对窗体进行更详细的设计环境。可以在设计视图中完成更多的设计任务,包括在布局视图不易完成的一些细微调整。 • 设计视图中的窗体并不处在运行状态,如果想看到窗体的实际运行情况,必须切换到窗体视图。
窗体页眉 单个窗体 包含的内容 11.1.3 打印窗体 • 窗体不仅能以通过屏幕和键盘实现人-机交互,还可以用来打印输出。 • 例如,选中“学生”窗体,单击“Office 按钮”,从“打印”中选择“打印预览”,此时将显示窗体的打印预览窗口。
11.2 创建窗体 • Access的窗体分作多种类型,有些是与窗体中的数据布局形式相关,例如:纵栏式、表格、数据表;有些与数据内容的组织和表现形式相关,例如:数据透视表、数据透视表图;有些与操作流程的控制相关,例如:控制面板,等等。 • 创建窗体的方式分为三类,即: • 自动创建 • 利用向导创建 • 利用窗体设计视图创建
图11.1 创建窗体的命令按钮 11.2.1自动创建窗体 • 自动创建窗体是最简单的一种设计窗体的方法。采用这种方式创建窗体的步骤如下: • 在导航窗格中选中一个将与窗体连接并向窗体提供数据的表或查询; • 在“创建”选项卡上的“窗体”组中,单击“窗体”,或者单击“分隔窗体”,或者单击“多个项目”,即可由系统自动创建相应窗体,并以布局视图方式打开这个新窗体。
11.2.1自动创建窗体 纵栏式窗体 分隔式窗体 多项目窗体
11.2.1自动创建窗体 主/子窗体
11.2.2 利用窗体向导创建窗体 • 利用窗体向导创建窗体的过程也比较简单,在创建过程中按照向导的要求选择或填写好必须的信息后,就可以由系统生成相应的窗体。 • 利用向导创建的窗体类型,与可自动创建的窗体类型一致,即:纵栏式、表格式、数据表等简单类型。
11.2.2 利用窗体向导创建窗体 • 在“创建”选项卡上的“窗体”组中,单击“其他窗体”,从中选择“窗体向导”,即可打开“窗体向导”对话框。 • 选择将在窗体上使用的那些字段。字段可以从一个或多个表或查询中选择。选择时,先选择表或查询,然后从相应的可用字段栏中把所需字段移动到选定字段栏中。
11.2.2 利用窗体向导创建窗体 • 当所选字段涉及到的来源为一个或多个表或查询时,向导的后续内容将有所不同: 仅涉及一个表的布局选择 涉及多个数据源时的查看方式选择
11.2.2 利用窗体向导创建窗体 • 选择窗体的样式,此时可以从系统预设的样式表中进行选择,其作用的是选择合适的控件大小、颜色、边框等设置。 • 最后,给新窗体命名,并保存窗体。如果创建的是单一窗体,只需给一个窗体命名,如果创建的是带有子窗体的窗体,则应分别给主窗体和子窗体命名。 命名和保存窗体 选择窗体所用样式
11.2.3 利用窗体设计视图创建窗体 • 在“创建”选项卡上的“窗体”组中,单击“窗体设计”,即可见到以设计视图方式打开的新窗体。 • 此时的新窗体上没有如何控件,也没有同数据表建立联系。如果切换到窗体视图,将看到一个空白的窗体。 • 此时,设计者可以在这个基础上充分发挥自己的设计才能,运用各种设计元素,来实现自己的创作目标。
11.2.3 利用窗体设计视图创建窗体 • 在窗体设计视图方式下,系统自动出现窗体设计工具相关的两个选项卡:“设计”选项卡和“排列”选项卡。 “设计”选项卡 “排列”选项卡
11.2.3 利用窗体设计视图创建窗体 • 设计一个新窗体的一般步骤如下: • 选用窗体区域。例如,隐藏或显示窗体页眉/页脚、页面页眉/页脚。 • 与相关表建立联系。例如,选择所需的数据源,选择所需字段。 • 在窗体中添加所需的控件。例如:文本框、标签、按钮、图像等。 • 编辑窗体中各元素的属性,调整其大小、颜色、边框、边距等格式参数,及数据、事件、其他参数。 • 预览窗体设计、运行效果,对窗体及控件做进一步修改调整。 • 给新窗体命名并保存。
11.3.1 窗体的节 • 在Access中,窗体中可用的各个区域被称为节,一个窗体可分为五个节: • 主体 • 窗体页眉/页脚(可选) • 页面页眉/页脚(可选)
11.3.2建立数据联系 • 为了显示和编辑表中的数据,窗体应该与表建立数据联系。 • 窗体与表之间的数据联系实际上可分为两个层次: • 一是,窗体与哪个表或查询进行联系; • 二是,窗体中用来显示数据的某个控件(最常用的是文本框)与表或查询中的哪个字段进行联系。 • 建立数据联系的任务,就是进行这两类联系的定义。
11.3.2建立数据联系 • 通过拖放字段实现 • 从“设计”选项卡上的“工具”组中,单击“添加现有字段”,显示“字段列表”对话框,如果显示“没有可添加到当前视图中的字段”,可单击“显示所有表”,此时,将显示当前数据库中所有的表。 • 在“字段列表”对话框中,把所需字段拖放到窗体的主体区中。
11.3.2建立数据联系 • 表中的字段拖放到窗体主体区后,通常将形成两个对象,一个是用来显示字段名称的标签,另一个就是与字段对应的用来显示字段数据的文本框。 • 与此同时,系统将自动进行检查,如果发现这个字段所属的当前表与其他表间具有一对多的关系,就会自动显示出相关表中的字段,以备选用。
11.3.2建立数据联系 • 通过属性设置实现 • 从图11.21 所示的菜单中选择“属性”,出现“属性表”对话框,通过该对话框,可以查看窗体上每一个对象的全部属性情况,可以通过修改属性设置来调整相应对象各种特征。
11.3.2建立数据联系 窗体与“学生”表建立联系 文本框与“学号”字段建立联系 窗体的属性表 文本框的属性表
11.3.3窗体控件 • 在窗体处于设计视图时,“设计”选项卡中的“控件”组给出了在窗体上可以使用的各种控件。 • 在Access中,控件按照与表或查询中字段的联系情况分为绑定控件、非绑定控件和计算控件三种类型: • 绑定控件 • 非绑定控件 • 计算控件
11.3.3窗体控件 • 绑定控件 • 指与表或查询的某个字段绑定在一起,用于同步显示绑定字段的值的控件。大多数允许输入信息的控件都是绑定控件,在给绑定控件输入某个值时,Access自动更新当前记录中的对应字段。绑定控件可以与大多数数据类型的字段捆绑在一起,包括文本、日期、数值、是/否、图片和备注等类型字段。 • 非绑定控件 • 指没有与表或查询的某个字段绑定在一起,独立显示或保留所输入的值的控件。这些控件可用于显示文本、形状、没有存储在表中但在窗体上显示的各种图像等。
11.3.3窗体控件 • 计算控件 • 是基于表达式(如函数和计算)来生成值的控件。在窗体运行时,该控件按表达式进行计算并显示计算结果值。在计算控件中可以引用数据源中字段或其他控件的值来参与计算。
11.3.3窗体控件 • 使用控件时,控件属性对控件的作用有着重要意义。 • 控件属性是一组反映和控制控件某些方面特征的数据项。 • 属性的值,大体上有字符、数字、是否和十六进制数等类型,其中十六进制数为以#开头的6位符号,用来表示一个颜色值。选中大多数属性时,其右方会出现下拉箭头按钮,单击该按钮,可从下拉列表中选择预定设置。
11.3.3窗体控件 • 当控件的类型不同时,控件所具有的属性可能有所不同,大体上可分为:格式、数据、事件、其他等四类。
11.3.3窗体控件 • 格式类属性 • 本类属性与当前控件在窗体上的显示位置、形式、颜色等有关。各种不同控件的格式属性数量也不相同,例如文本框有多达50个格式类属性。 • 本类较为常用的属性有:标题、格式、高度、宽度、图片、图片类型、背景样式、背景色、上边距、左边距、边框样式、边框宽度、边框颜色、特殊效果、字体名称、字号、文本对齐方式、文本上边距、文本下边距、文本左边距、文本右边距,等等。
11.3.3窗体控件 • 数据类属性 • 本类属性与当前控件在运行时所显示的数据如何得到、如何控制有关,某些与获取数据无关的控件没有本类属性。 • 本类较为常用的属性有:控件来源、行来源、行来源类型、绑定列、文本格式、输入掩码、默认值、有效性规则、有效性文本、筛选查找、可用、是否锁定,等等。
11.3.3窗体控件 • 事件类属性 • 本类属性与当前控件在运行时有事件发生应如何处理有关,有些控件(例如标签)没有本类属性。 • 对应每种事件,可以在相应项目处选择当前数据库中所包含的宏,或者设置嵌入的宏,或者设计或选择模块中的过程,来响应事件。当控件的某种事件发生时,由系统自动调用所设的宏或过程来进行特定的操作处理。
11.3.3窗体控件 • 其他属性 • 本类收集了控件的除以上三类外的其他属性。 • 主要有:名称、控件提示文本、状态栏文字、ENTER键行为、垂直方向、输入法模式,等等。其中“名称”属性为当前控件在窗体中用于区别于其他控件的一串字符,其作用类似于标识符。在窗体操作时,可按控件名称来控制控件,或者调用控件的值。
常用控件 控件向导
文本框 • 文本框是用于在窗体中查看和编辑数据的标准控件。 • 文本框中可用于显示:文本、备注、数字、日期/时间、货币、超链接等多种不同类型的数据。 • 文本框可以作为 • 绑定控件 • 非绑定控件 • 计算控件
文本框 • 绑定文本框 • 当从窗体的字段列表中将上述类型的字段拖放到窗体上时,系统就自动创建相应的文本框,并将文本框的控件来源属性设置为相应字段名称。这样生成的文本框属于绑定文本框。 • 绑定文本框中有一些与定义字段相类似的属性,例如:有效性规则、有效性文本、输入掩码、默认值,等等。 • 当然,在绑定文本框中设置的这些属性只是在当前窗体运行时有效,为在窗体中使用数据增加了一道安全检查或控制。
文本框 • 计算文本框 • 如果将文本框的控件来源写为表达式,则该文本框就变成了计算文本框。 • 计算文本框的控件来源属性中的表达式为以等号(=)开头的一串字符,这串字符描述了如何计算产生将在当前文本框中显示的数据。 • 例如:= YEAR(DATE( ))-YEAR(出生日期),该表达式将根据当前记录的出生日期值计算出与当前日期的年份差,也就是年龄。随着记录的变化,计算字段将会自动计算并显示相应计算结果值。
计算文本框示例 绑定文本框 标签 计算文本框
标签 • 标签的主要作用就是显示静态的标题或说明性的文字,在窗体运行期间一般不能改的,操作者不能对其值进行录入或编辑。 • 标签的属性较为简单,基本上都属于格式类。标签所显示的内容在标题属性中,标题中的内容应该直接填写具体的值,因为它没有计算能力。
列表框 • 列表框控件以列表的形式显示值或选项。 • 列表框以固定的行数来显示所包含的数据行,数据行可以有一个或多个列,这些列可以显示或不显示标题。 • 应该注意的是:用户只能选择列表框中提供的选项,而不能在列表框中键入值。
列表框 列表框的格式属性 列表框的数据属性
列表框 列表框总是与一组可供选择的数据有联系,这组数据由列表框的行来源类型和行来源属性来确定。 • 表/查询 • 此时的行来源可以是两种内容之一:当前数据库中的一个表或已存储的查询的名称;一个有效地SELECT语句。 • 窗体运行时,列表框中将显示出指定的表或查询提供的数据。此时,如果所指定的表或查询提供的数据列多于一列,应在列表框的列数属性中设置将显示的列数,并在列宽属性中设置每一列的宽度。
列表框 • 值列表 • 此时的行来源为一组由分号分隔的值。 • 窗体运行时,列表框中将分行显示出各项数据。 • 字段列表 • 此时的行来源可以是一个表或已存储的查询的名称。 • 窗体运行时,列表框中将分行显示出指定名称的表或查询所包含的字段名称。
列表框 • 从列表框中选中的值,所产生的作用与当前列表框是否为绑定列表框有关。 • 如果列表框的控件来源非空,填写的是一个字段名称,表示该列表框是绑定列表框,否则就是非绑定列表框。 • 如果是绑定列表框,在窗体运行时,如果选择了列表中的某行,该行中的数据将送入表中相应字段。默认情况下,列表中的第1列数据与控件来源中的字段绑定,当列表中的数据列数多于一列,可以指定哪一列数据用来与控件来源中的字段绑定,即把选中行中的哪个值送入表中指定的字段。 • 如果当前列表框为非绑定列表框,则选中的值可用于当前窗体中其他控件的计算,或用于组成检索条件。
组合框 • 组合框控件通常只显示为一行,单击下拉箭头时,出现包含若干行数据的列表。组合框允许用户从数据列表中选择数据,同时也允许输入不在列表中的值。这样,组合框控件就同时具有文本框和列表框的功能。 • 类似于文本框和列表框,组合框也有绑定或不绑定之分,其作用和效果为文本框和列表框的综合。
复选框、选项按钮、切换按钮 • 复选框通常具有选中和未选中两种状态。 • 在与逻辑类型的数据结合使用时,复选框的选中状态对应True(-1),未选中状态对应False(0)。如果把逻辑类型的字段拖放到窗体上,就会看到系统自动创建了相应的复选框。当复选框的控件来源属性值为一字段名称时,该控件就是绑定复选框,否则,就是非绑定复选框。
选项组 • 选项组控件通常包含多个选项按钮,每个选项按钮都有两种状态:选中和未选中。 • 与单个选项按钮所不同的是同一组选项按钮中每次只允许其中的一个被选中,当某一项被选中时,其他选项就自动变成未选中状态。