首页 百科知识 学籍管理的实施

学籍管理的实施

时间:2022-10-12 百科知识 版权反馈
【摘要】:在完成数据库的结构及其保护设计之后,设计人员就可以使用Access 2010,具体实现“学籍管理”应用系统。根据学籍管理的需求分析和数据库设计的结果,就可以使用Access 2010建立“学籍管理”数据库,及其相关表。根据“学籍管理”的数据字典,利用表的“设计视图”,创建“学生”“课程”“专业”和“选课”4张表,并且设置表的相应主键、外键及其约束。

9.3 学籍管理的实施

在完成数据库的结构及其保护设计之后,设计人员就可以使用Access 2010,具体实现“学籍管理”应用系统。

根据学籍管理的功能,如图9.1所示。不难看出,学籍管理的主要功能模块包括:

(1)密码窗体

(2)主控窗体。

(3)编辑信息窗体+查询信息窗体+打印报表窗体+帮助窗体。

(4)编辑学生窗体+编辑课程窗体+编辑专业窗体+编辑选课窗体+编辑成绩窗体。

(5)查询学生窗体+查询课程窗体+查询专业窗体+查询选课窗体+查询成绩窗体。

(6)学生报表+课程报表+专业报表+选课报表+成绩报表。

系统首先通过“AutoExec”宏,自动启动“密码窗体”;然后通过其他相关的宏,依次调用“主控窗体”及其下级相关的窗体。

系统通过“AutoKeys”宏,利用“功能热键”,直接调用相应的功能模块。

系统通过“快捷菜单”宏,利用“快捷菜单”,直接调用相应的功能模块。

所以,系统通过“密码窗体”“主控窗体”“功能热键”和“快捷菜单”等多种方式,把“学籍管理”的各个功能模块,按照实际要求集成为一个完整的应用系统。

9.3.1用户界面设计

图形用户界面(Graphical User Interface,GUI)是结合计算机科学、美学、心理学、行为学及其应用领域的人机交互系统,强调人、机、环境三者作为一个系统进行总体设计。GUI是用户与计算机进行信息交流的基本方式,也是功能模块集成的接口。但是设计满足用户要求、布局合理、界面美观、操作简单的GUI,并非易事。

GUI设计的主要内容:GUI类型、GUI风格、结构与布局和GUI接口等。

(1)GUI类型。系统的界面结构类型。常用类型:显式GUI和隐式GUI(快捷菜单)。

(2)GUI风格。界面视觉效果及其风格类型。常用风格:标准GUI(Windows、Unix、Linux、Java的系列GUI)和用户定义GUI。

(3)GUI结构与布局。由标签、文本框、按钮、列表框、组合框、滑动条等GUI组件构成的,并且能够实现指定功能控制的界面整体结构。

(4)界面接口:实现功能之间相互调用的接口。

在设计GUI时,应该注意用户是上帝,不要忽略了用户,所有设计都应该从用户角度给予充分的考虑,同时顶层不要有太多的功能特性,尽量简化操作流程以及操作步骤,尽量提供可视反馈信息,适当适度地提供声音反馈信息,尽量支持键盘操作,最后一定要保持GUI清晰、简洁、美观。经典GUI的产生,需要一定时间的经验积累。

因此,在设计GUI时,根据GUI设计的基本规则,确定GUI的类型和风格,合理安排结构和布局,设计界面接口,从而设计出满足实际应用的GUI。

9.3.2 建立学籍管理数据库

根据学籍管理的需求分析和数据库设计的结果,就可以使用Access 2010建立“学籍管理”数据库,及其相关表。

首先,在Windows 7环境下,创建“学籍管理”文件夹,然后,利用下述方法建立数据库。

(1)启动Access 2010,单击“文件”,单击“新建”,单击“空数据库”,单击“文件名”右下侧的“打开”按钮,选择“学籍管理”文件夹;在“文件名”下方的文本框中,输入“学籍管理”,单击下方的“创建”按钮。

(2)根据“学籍管理”的数据字典,利用表的“设计视图”,创建“学生”“课程”“专业”和“选课”4张表,并且设置表的相应主键、外键及其约束。

(3)单击“数据库工具”选项卡,在“关系”组中单击“关系”按钮。在关系编辑器中,创建4个表之间的关联关系如图9.3所示。

img412

图9.3 学籍管理数据库的表间关系

9.3.3 编辑信息窗体设计

编辑信息窗体是用来向数据库增添新记录、修改记录和删除记录等,这是一个应用系统应具有的基本功能。

在编辑表的数据时,一定考虑数据的实体完整性约束、参照完整性约束和用户定义完整性约束等数据正确性、一致性和相容性的容错处理(例如:学号不能相同,不能为空;姓名不能为空;性别只能是“男”或者“女”;年龄只能在6岁到96岁之间等),以避免非法数据进入表中。

“学籍管理”的编辑信息窗体包括:编辑学生信息窗体、编辑课程信息窗体、编辑专业信息窗体(留作实验)、编辑选课信息窗体和编辑成绩信息窗体等。

9.3.3.1 编辑学生信息窗体设计

“编辑学生”窗体,用于完成学生信息的添加、修改和删除等编辑任务。功能设计应该满足如图9.4所示的运行界面。

在窗体的“设计视图”中,创建一个名称为“编辑学生”的窗体。

(1)在“属性表”中,设置数据源为“学生”。

(2)在“字段列表”中,通过双击“学生”表的每个字段,依次添加与字段相对应的默认控件。

(3)按照如图9.5所示的界面,依次添加两个“矩形”、一个标签、两条直线条。

(4)选中“使用控件向导”,依次添加“首记录”“上一记录”“下一记录”“末记录”“查找记录”“添加记录”“删除记录”“撤销记录”和“保存记录”等图像风格的按钮。

(5)在“属性表”中,设置控件的位置和大小等其他相关的属性。

编辑学生信息窗体的设计结果如图9.5所示。

9.3.3.2 编辑课程信息窗体设计

“编辑课程”窗体,用于完成课程信息的添加、修改和删除等编辑任务。功能设计应该满足如图9.6所示的运行界面。

img413

图9.4 编辑学生的窗体视图

img414

图9.5 编辑学生的设计视图

在窗体的“设计视图”中,创建一个名称为“编辑课程”的窗体。

(1)在“属性表”中,设置数据源为“课程”。

img415

图9.6 编辑课程的窗体视图

(2)在“字段列表”中,通过双击“课程”表的每个字段,依次添加与字段相对应的默认控件。

(3)按照如图9.7所示的界面,依次添加两个“矩形”、一个标签、两条直线条。

(4)选中“使用控件向导”,依次添加“首记录”“上一记录”“下一记录”“末记录”“查找记录”“添加记录”“删除记录”“撤销记录”和“保存记录”等图像风格的按钮。

(5)在“属性表”中,设置控件的位置和大小等其他相关的属性。

编辑课程信息窗体的设计结果如图9.7所示。

img416

图9.7 编辑课程的设计视图

9.3.3.3 编辑选课信息窗体设计

“编辑选课”窗体,用于完成对指定学生的课程的选择与编辑。同时,要求学生的“学号”和“姓名”信息,不能修改,只能是“只读”状态;课程的选择,可以对“课程”表中的信息,按照交互方式选取。功能设计应该满足如图9.8所示的运行界面。

在窗体的“设计视图”中,创建一个名称为“编辑选课”的包含子窗体的窗体。子窗体的名称为“编辑选课子窗体”。

(1)在“属性表”中,设置数据源为“学生”。

(2)在“字段列表”中,通过双击“学生”表的“学号”和“姓名”字段,依次添加与字段相对应的默认控件;设置“可用”属性为“否”(即只读)。

img417

图9.8 编辑选课的窗体视图

(3)按照如图9.9所示的界面,依次添加两个“矩形”、一个标签、两条直线条。

(4)选中“使用控件向导”,依次添加“首记录”“上一记录”“下一记录”“末记录”和“保存记录”等图像风格的按钮。

img418

图9.9 编辑选课的设计视图

(5)创建子窗体。

①选中“使用控件向导”,单击“窗体设计工具”的“设计”上下文选项卡,单击“子窗体/子报表”按钮,在“主体”中,拖出一个矩形区域,如图9.10所示。

img419

图9.10 子窗体向导-1

②选择“使用现有的表和查询”,单击“下一步”,如图9.11所示。

img420

图9.11 子窗体向导-2

③在“表和查询”的下方,选择“表:选课”;把“可用字段”下方的“学号”和“课程号”,移到“选定字段”下方的列表中,单击“下一步”,如图9.12所示。

img421

图9.12子窗体向导-3

④选择“从列表中选择”,并在下方选择“对学生中的每个记录用学号显示选课”,单击“下一步”,如图9.13所示。

img422

图9.13子窗体向导-4

⑤在“请指定子窗体/子报表的标题”下方的文本框中,输入“编辑选课子窗体”,单击“完成”。

⑥选中“编辑选课子窗体”标签,在“属性表”中,设置“标题”的属性值为“选课列表”。

⑦在“编辑选课子窗体”的“主体”中,删除“学号”和“课程号”的标签和文本框;

⑧在“编辑选课子窗体”中,创建一个组合框:

选中“编辑选课子窗体”的“主体”,单击“窗体设计工具”的“设计”上下文选项卡,单击“组合框”按钮,在“主体”中,拖出一个矩形区域,如图9.14所示。

img423

图9.14 组合框向导-1

选择“使用组合框获取其他表或查询中的值”,单击“下一步”,如图9.15所示。

img424

图9.15 组合框向导-2

在列表中,选择“表:选课”,单击“下一步”,如图9.16所示。

把“可用字段”下方列表中的所有字段,移到“选定字段”下方的列表,单击“下一步”,如图9.17所示。

img425

图9.16 组合框向导-3

img426

图9.17 组合框向导-4

单击“下一步”,如图9.18所示。

img427

图9.18 组合框向导-5

勾选“隐藏键列(建议)”,单击“下一步”,如图9.19所示。

在“可用字段”下方的列表中,选择“课程名”,单击“下一步”,如图9.20所示。

选择“记忆该数据共以后使用”,单击“下一步”,如图9.21所示。

在“请为组合框指定标签”下方的文本框中,输入“课程名”,单击“完成”。

在“编辑选课子窗体”的“主体”中,选中新建的“未绑定”组合框,在“属性表”中,设置“数据源”的属性值为“课程号”。

img428

图9.19 组合框向导-6

img429

图9.20 组合框向导-7

img430

图9.21 组合框向导-8

(6)在“属性表”中,设置控件的位置和大小等其他相关的属性。

编辑选课信息窗体的设计结果如图9.9所示。

▲思考:如果先建立“编辑选课子窗体”,然后在“编辑选课”中,添加“编辑选课子窗体”,如何实现?

9.3.3.4 编辑成绩信息窗体设计

“编辑成绩”窗体,用于完成对指定课程的平时、期中和期末成绩的输入和修改。同时,要求课程的“课程号”和“课程名”信息,不能修改,只能是“只读”状态。而且子窗体中,要求“学号”“姓名”和“总分”的信息,不能修改,只能是“只读”状态。功能设计应该满足如图9.22所示的运行界面。

img431

图9.22 编辑成绩的窗体视图

在窗体的“设计视图”中,创建一个名称为“编辑成绩”的包含子窗体的窗体。子窗体的名称为“编辑成绩子窗体”,

(1)在“属性表”中,设置数据源为“课程”。

(2)在“字段列表”中,通过双击“课程”表的“课程号”和“课程名”字段,依次添加与字段相对应的默认控件;设置“可用”属性为“否”(即只读)。

(3)按照如图9.23所示的界面,依次添加两个矩形、一个标签、两条直线条。

(4)选中“使用控件向导”,依次添加“首记录”“上一记录”“下一记录”“末记录”和“保存记录”等图像风格的按钮。

(5)创建子窗体。

①选中“使用控件向导”,单击“窗体设计工具”的“设计”上下文选项卡,单击“子窗体/子报表”按钮,在“主体”中,拖出一个矩形区域,如图9.24所示。

②选择“使用现有的表和查询”,单击“下一步”,如图9.25所示。

③在“表和查询”的下方,选择“表:学生总成绩”;把“可用字段”下方的“学号”“姓名”“课程号”“平时”“期中”“期末”和“总成绩”,移到“选定字段”下方的列表中,单击“下一步”,如图9.26所示。

▲说明:“学生总成绩”表是包含“学生”“课程”“选课”和“专业”的所有字段的一个自然连接查询;总成绩是“平时”“期中”和“期末”,按照10%、30%和60%的比例,计算结果。

④选择“从列表中选择”,并在下方选择“对课程中的每个记录用课程号显示学生总成绩”,单击“下一步”,如图9.27所示。

⑤在“请指定子窗体/子报表的标题”下方的文本框中,输入“编辑成绩子窗体”,单击“完成”。

img432

图9.23 编辑成绩的设计视图

img433

图9.24 子窗体向导-1

⑥选中“编辑成绩子窗体”标签,按下“Delete”键,删除该标签。

⑦在“编辑成绩子窗体”的“主体”中,删除“课程号”的标签和文本框。选中“学号”“姓名”和“总成绩”的文本框,在“属性表”中,单击“数据”选项卡,设置“可用”的属性值为“否”。

img434

图9.25 子窗体向导-2

img435

图9.26 子窗体向导-3

img436

图9.27 子窗体向导-4

(6)在“属性表”中,设置控件的位置和大小等其他相关的属性。

编辑成绩信息窗体的设计结果如图9.23所示。

▲思考:如果先建立“编辑成绩子窗体”,然后在“编辑成绩”中,添加“编辑成绩子窗体”,如何实现?

9.3.4 查询信息窗体设计

查询信息窗体是按照指定的条件在数据库中查找到用户所需要的数据。这是一个应用系统应具有的核心功能,也是利用率最高的功能。因此查询模块设计的质量,会直接影响系统的运行质量。

查询通常可以分为简单查询、组合查询和模糊查询。

简单查询:直接给出要查询的编号或者名称等具体的值,然后利用查询功能,从表中查找所需要的数据。例如:查询学号是11060606的学生的信息。

组合查询:首先给出所要查询的数据满足的一系列条件,然后根据条件,利用查询功能,在表中查找所需要的数据。例如:查询姓名是张三的19岁以上的女生信息。

模糊查询:给出所要查询的数据满足的一系列局部条件,然后根据条件,利用查询功能,在表中查找所需要的数据。例如:查询姓张的学生信息。

“学籍管理”的查询信息窗体包括:查询学生信息窗体、查询课程信息窗体、查询专业信息窗体(留作实验)、查询选课信息窗体和查询成绩信息窗体等。

9.3.4.1 查询学生信息窗体设计

“查询学生”窗体,用于完成按照指定的学号,查询学生及其相关信息的任务。具体包括用于输入查询条件的“查询学生”窗体和用于显示查询结果的“查询学生主窗体”。功能设计应该满足如图9.28和图9.29所示的查询条件和查询学生信息的运行界面。

img437

图9.28 查询学生的条件窗体视图

img438

图9.29 查询学生的窗体视图

(1)在窗体的“设计视图”中,创建一个名称为“查询学生主窗体”的包含子窗体的窗体,子窗体的名称为“查询学生子窗体”。

①在“属性表”中,设置数据源为“学生”。

②在“字段列表”中,通过双击“学生”表的每个字段,依次添加与字段相对应的默认控件。

③按照如图9.30所示的界面,依次添加两个矩形、一个标签、一条直线条。

img439

图9.30 查询学生主窗体的设计视图

④创建“查询学生子窗体”。

选中“使用控件向导”,单击“窗体设计工具”的“设计”上下文选项卡,单击“子窗体/子报表”按钮,在“主体”中,拖出一个矩形区域,如图9.31所示。

img440

图9.31 子窗体向导-1

选择“使用现有的表和查询”,单击“下一步”,如图9.32所示。

img441

图9.32 子窗体向导-2

在“表和查询”的下方,选择“表:学生总成绩”;把“可用字段”下方的“学号”“专业名”“隶属学院”“平时”“期中”“期末”和“总成绩”,移到“选定字段”下方的列表中,单击“下一步”,如图9.33所示。

img442

图9.33 子窗体向导-3

选择“从列表中选择”,并在下方选择“对学生中的每个记录用学号显示学生总成绩”,单击“下一步”,如图9.34所示。

在“请指定子窗体/子报表的标题”下方的文本框中,输入“查询学生子窗体”,单击“完成”。

img443

图9.34 子窗体向导-4

选中“编辑选课子窗体”标签,按下“Delete”键,删除该标签。

在“查询学生子窗体”的“主体”中,删除“学号”的标签和文本框。

⑤在“属性表”中,设置控件的位置和大小等其他相关的属性。

查询学生主窗体的设计结果如图9.30所示。

(2)创建一个名称为“查询条件窗体”的包含子宏“查询学生主窗体”的“组宏”。

①在“宏设计器”中,添加名称为“查询学生主窗体”的子宏,如图9.35所示。

②在子宏中,添加“OpenForm”操作,在“窗体名称”右侧,选择“查询学生主窗体”;在“当条件”的右侧,输入“[Forms].[查询学生].[Text1]=[学生].[学号]”。

img444

图9.35 查询条件窗体—学生—设计视图

(3)创建一个名称为“查询学生”的用于输入查询条件的窗体。

①按照如图9.36所示的界面,依次添加一个文本框、一个标签、一条按钮。

②选中“文本框”,设置“名称”的属性值为“Text1”。

③选中“按钮”,选择“单击”的属性值为“查询条件窗体.查询学生主窗体”。

④在“属性表”中,设置位置和大小等其他属性。

img445

图9.36 查询学生的设计视图

9.3.4.2 查询课程信息窗体设计

“查询课程”窗体,用于完成按照指定的课程,查询课程及其相关信息的任务。具体包括用于输入查询条件的“查询课程”窗体和用于显示查询结果的“查询课程主窗体”。功能设计应该满足如图9.37和图9.38所示的查询条件和查询课程信息的运行界面。

img446

图9.37 查询课程的条件窗体视图

img447

图9.38 查询课程主窗体的窗体视图

(1)在窗体的“设计视图”中,创建一个名称为“查询课程主窗体”的窗体。

①在“属性表”中,设置数据源为“课程”。

②在“字段列表”中,通过双击“课程”表的每个字段,依次添加与字段相对应的默认控件。

③按照如图9.39所示的界面,依次添加两个矩形、一个标签、一条直线条。

img448

图9.39 查询课程主窗体的设计视图

④在“属性表”中,设置控件的位置和大小等其他相关的属性。

查询课程主窗体的设计结果如图9.39所示。

(2)在名称为“查询条件窗体”的“组宏”中,添加子宏“查询课程主窗体”。

①在“宏设计器”中,打开“查询条件窗体”,添加名称为“查询课程主窗体”的子宏,如图9.40所示。

②在子宏中,添加“OpenForm”操作,在“窗体名称”右侧,选择“查询课程主窗体”;在“当条件”的右侧,输入“[Forms].[查询课程].[Text1]=[课程].[课程号]”。

img449

图9.40 查询条件窗体—课程—设计视图

(3)创建一个名称为“查询课程”的用于输入查询条件的窗体。

①按照如图9.41所示的界面,依次添加一个文本框、一个标签、一条按钮。

②选中“文本框”,设置“名称”的属性值为“Text1”。

③选中“按钮”,选择“单击”的属性值为“查询条件窗体.查询课程主窗体”。

④在“属性表”中,设置位置和大小等其他属性。

img450

图9.41 查询课程的设计视图

9.3.4.3 查询选课信息窗体设计

“查询选课”窗体,用于完成按照指定的学号,查询学生的选课及其相关信息的任务。具体包括用于输入查询条件的“查询选课”窗体和用于显示查询结果的“查询选课主窗体”。功能设计应该满足如图9.42和图9.43所示的查询条件和查询选课信息的运行界面。

img451

图9.42 查询选课的条件窗体视图

img452

图9.43 查询选课的窗体视图

(1)在窗体的“设计视图”中,创建一个名称为“查询选课主窗体”的包含子窗体的窗体,子窗体的名称为“查询选课子窗体”。

①在“属性表”中,设置数据源为“学生”。

②在“字段列表”中,通过双击“学生”表的“学号”和“姓名”字段,依次添加与字段相对应的默认控件。

③按照如图9.44所示的界面,依次添加两个矩形、一个标签、一条直线条。

img453

图9.44 查询选课主窗体的设计视图

④创建“查询选课子窗体”。

选中“使用控件向导”,单击“窗体设计工具”的“设计”上下文选项卡,单击“子窗体/子报表”按钮,在“主体”中,拖出一个矩形区域,如图9.45所示。

img454

图9.45 子窗体向导-1

选择“使用现有的表和查询”,单击“下一步”,如图9.46所示。

img455

图9.46 子窗体向导-2

在“表和查询”的下方,选择“表:学生总成绩”;把“可用字段”下方的“学号”“课程名”“课程名”“学时”和“学分”,移到“选定字段”下方的列表中,单击“下一步”,如图9.47所示。

img456

图9.47 子窗体向导-3

选择“从列表中选择”,并在下方选择“对学生中的每个记录用学号显示学生总成绩”,单击“下一步”,如图9.48所示。

在“请指定子窗体/子报表的标题”下方的文本框中,输入“查询选课子窗体”,单击“完成”。

img457

图9.48 子窗体向导-4

选中“编辑选课子窗体”标签,在“属性表”中,设置“标题”的属性值为“选课列表”。

在“查询学生子窗体”子窗体的“主体”中,删除“学号”的标签和文本框。

⑤在“属性表”中,设置控件的位置和大小等其他相关的属性。

查询选课主窗体的设计结果如图9.44所示。

(2)在名称为“查询条件窗体”的“组宏”中,添加子宏“查询选课主窗体”。

①在“宏设计器”中,打开“查询条件窗体”,添加名称为“查询选课主窗体”的子宏,如图9.49所示。

②在子宏中,添加“OpenForm”操作,在“窗体名称”右侧,选择“查询选课主窗体”;在“当条件”的右侧,输入“[Forms].[查询选课].[Text1]=[学生].[学号]”。

img458

图9.49 查询条件窗体—选课—设计视图

(3)创建一个名称为“查询学生”的用于输入查询条件的窗体。

①按照如图9.50所示的界面,依次添加一个“文本框”、一个标签、一条按钮。

②选中“文本框”,设置“名称”的属性值为“Text1”。

③选中“按钮”,选择“单击”的属性值为“查询条件窗体.查询选课主窗体”。

④在“属性表”中,设置位置和大小等其他属性。

img459

图9.50 查询选课的设计视图

9.3.4.4 查询成绩信息窗体设计

“查询成绩”窗体,用于完成按照指定的课程,查询课程的成绩及其相关信息的任务。具体包括用于输入查询条件的“查询成绩”窗体和用于显示查询结果的“查询成绩主窗体”。功能设计应该满足如图9.51和图9.52所示的查询条件和查询成绩信息的运行界面。

“查询成绩”窗体的设计视图如图9.53所示。

“查询成绩主窗体”的设计视图如图9.54所示。

img460

图9.51 查询成绩—窗体视图

img461

图9.52 查询成绩主窗体—窗体视图

img462

图9.53 查询成绩—设计视图

img463

图9.54 查询成绩主窗体—设计视图

“查询条件窗体”组宏中,添加的“查询成绩主窗体”子宏,如图9.55所示。

img464

图9.55 查询条件窗体宏—查询成绩主窗体

不难看出,该功能模块的设计方法和实现过程,与前述方法相同,留作实验。

9.3.5 学籍管理报表设计

用户使用应用系统的主要目的是获取系统提供的有用的统计信息。打印报表是输出数据及其各类统计信息的有效方法。

尽管Access 2010提供了多种内定格式的报表,但是这些格式都是固定格式,通常满足不了用户的自定义格式的需要,所以需要设计满足用户要求的输出格式。

报表模块的功能就是用来设计满足用户个性要求的输出格式。因此在设计报表模块时,一般采用报表向导和自主设计相结合的方式。即首先利用报表向导,建立报表的雏形;然后在“设计视图”中,对“雏形报表”进行个性化设计,最终设计出满足要求的任意的个性化格式的复杂报表。

设计具体一张表格通常由以下3部分组成。

(1)表头表尾:主标题、子标题、日期时间和页数页码等。

(2)表内数据:来自数据库的记录数据、总和、均值和小计等。

(3)表间隔线:用来隔开数据的间隔线。

在设计报表时,首先画出输出的表格格式,然后精确计算每个数据和制表符的具体位置,最后整合设计。

“学籍管理”的报表包括:学生信息报表、课程信息报表、专业信息报表(留作实验)、选课信息报表和成绩信息报表等。

9.3.5.1 学生信息报表设计

“学生报表”,用于完成按照指定的格式和风格,输出学生的基本信息,及其相关的专业信息、选课信息和成绩信息。功能设计应该满足如图9.56所示的运行界面。

img465

图9.56 学生报表—报表视图

(1)利用“报表向导”,创建一个名称为“学生报表”的报表。

启动“报表向导”,选择“学生”表的学号、姓名、性别、生日、政治面貌、是否四级、高考成绩,选择“专业”表的专业名;“通过学生”查看数据;不分组;不排序;按照“表格”布局方式;输入报表的名称“学生报表”;完成“学生报表”的雏形。

(2)利用报表的“设计视图”,编辑“学生报表”。

①在报表的“设计视图”中,打开“学生报表”,如图9.57所示。

②在“报表页眉”区,添加日期时间、插入图像(图像自定)、设置标签的标题为“学生信息报表”等。

img466

图9.57 学生报表—设计视图

③在“主体”区,启动向导模式,利用“子窗体/子报表”,创建名称为“学生报表子报表”的子报表。子报表的数据源为“学生总成绩”;选择的字段为“学号”“课程名”“学分”“平时”“期中”“期末”和“总成绩”;通过“学号”显示“学生总成绩”的记录。最后,在完成的“子报表”中,删除“学号”的标签和文本框。

④在“页脚页眉”区,添加并编辑两个文本框,其内容分别为“="报表制作:HappyYou"”和“="共"&[Pages]&"页,第"&[Page]&"页"”。

⑤在“属性表”中,设置控件的位置和大小等其他相关的属性。

“学生报表”的设计结果如图9.57所示。

9.3.5.2 课程信息报表设计

“课程报表”,用于完成按照指定的格式和风格,输出课程及其相关信息。功能设计应该满足如图9.58所示的运行界面。

img467

图9.58 课程报表—报表视图

(1)利用“报表”,自动创建一个名称为“课程报表”的报表。

在“导航窗格”中,选中“课程”表;单击“创建”选项卡,单击“报表”组中的“报表”按钮。完成“课程报表”的雏形。

(2)利用报表的“设计视图”,编辑“课程报表”。

①在报表的“设计视图”中,打开“课程报表”,如图9.59所示。

img468

图9.59 课程报表—设计视图

②在“报表页眉”区,编辑日期时间、图像对象(图像自定)、设置标签的标题为“课程信息报表”等。

③在“属性表”中,设置控件的位置和大小等其他相关的属性。

“课程报表”的设计结果如图9.59所示。

9.3.5.3 选课信息报表设计

“选课报表”,用于完成按照指定的格式和风格,输出不同专业、不同学生的选课及其相关统计信息等。功能设计应该满足如图9.60所示的运行界面。

img469

图9.60 选课报表—报表视图

(1)利用“报表向导”,创建一个名称为“选课报表”的报表。

启动“报表向导”,选择“学生总成绩”表的专业名、学号、姓名、课程号、课程名、学时、学分和分类;“通过专业”查看数据;不分组;不排序;“汇总选项”中,勾选学时和学分的“汇总”“平均”“最小”和“最大”,“显示”中,选择“明细和汇总”(可以勾选“计算汇总百分比”);按照“递阶”布局方式;输入报表的名称“选课报表”;完成“选课报表”的雏形。

(2)利用报表的“设计视图”,编辑“选课报表”。

①在报表的“设计视图”中,打开“选课报表”,如图9.61所示。

②在“报表页眉”区,添加和编辑直线(2pt)、日期时间、插入图像(图像自定)、设置标签的标题为“选课信息报表”等。

img470

图9.61 选课报表—设计视图

③在“页面页眉”区上下方,各添加一条直线(1pt),编辑其他标签。

④在“专业名页眉”区下方,添加一条直线(1pt),编辑其他标签。

⑤在“页脚页眉”区,添加并编辑两个文本框,其内容分别为“="报表制作:HappyYou"”和“="共"&[Pages]&"页,第"&[Page]&"页"”。

⑥在“报表页脚”区上方,添加两条直线(1pt+2pt),编辑其他标签。

⑦在“属性表”中,设置控件的位置和大小等其他相关的属性。

“选课报表”的设计结果如图9.61所示。

9.3.5.4 成绩信息报表设计

“成绩报表”,用于完成按照指定的格式和风格,输出每门课程的所有学生的成绩及其相关统计信息等。功能设计应该满足如图9.62所示的运行界面。

img471

图9.62 成绩报表—报表视图

利用“报表视图”,创建如图9.63所示的“成绩报表”。操作步骤如下:

(1)单击“创建”,单击“报表”组中的“报表设计”;设置当前报表的数据源为“学生总成绩”。

(2)在“报表页眉”区,添加和编辑直线(3pt)、日期时间、插入图像(图像自定)、设置标签的标题为“成绩信息报表”等。

img472

图9.63 成绩报表—设计视图

(3)单击“报表设计工具”的“设计”上下文命令选项卡,单击“工具”组中的“添加现有字段”;在“字段列表”中,依次双击“课程号”“课程名”“学号”“姓名”“平时”“期中”“期末”和“总成绩”,向“主体”区依次添加相应的控件。

(4)单击“报表设计工具”的“设计”上下文命令选项卡,单击“分组和汇总”组中的“分组和排序”。

(5)在下方的“分组、排序和汇总”的窗口中,添加分组和排序字段。即

单击“添加分组”,在“选择字段”的下拉列表中,选择“课程号”;

单击“添加排序”,在“选择字段”的下拉列表中,选择“学号”。

(6)在“课程号页眉”区,把“主体”区中的“课程号”和“课程名”的标签和文本框移到“课程号页眉”区中;再把“学号”“姓名”“平时”“期中”“期末”和“总成绩”的标签移到“课程号页眉”区中;然后编辑控件的其他相关属性。

(6)在“课程号页脚”区,添加一个“标题”为“平均”的标签和4个文本框,设置文本框的“控制来源”的属性值分别为“=Round(Avg([平时]),1)”“=Round(Avg([期中]),1)”“=Round(Avg([期末]),1)”和“=Round(Avg([总成绩]),1)”。

(7)在“报表页脚”区,添加并编辑两个文本框,其“控制来源”的属性值分别为“="报表制作:HappyYou"”和“="共"&[Pages]&"页,第"&[Page]&"页"”。

(8)在“属性表”中,设置控件的位置和大小等其他相关的属性。

(9)保存当前报表为“成绩报表”。“成绩报表”的设计结果如图9.63所示。

9.3.6 学籍管理帮助窗体设计

帮助模块是用于详细介绍软件系统的软件和硬件运行环境、功能、性能指标和使用方法。因此以多种不同的方式提供功能完善的帮助系统,可以使用户更好地使用软件系统。所以,帮助模块是一个软件系统必不可少的功能模块。设计帮助模块主要包括:

(1)帮助功能菜单。在系统的主菜单中,提供帮助模块接口,这是目前用户使用最多、最习惯、最流行的获取帮助信息的方式。使用菜单设计技术实现。

(2)帮助工具栏。在系统的工具栏中,提供帮助模块接口,这是用户更快捷的获取帮助信息的方式,用户最容易接受的方式。使用工具栏设计技术实现。

(3)状态栏提示功能。在主界面的状态栏中,提供帮助提示信息,用于提供关于当前操作的功能信息和使用方法。在创建功能菜单和工具栏时,提供了相应的接口。

(4)模块帮助功能。系统运行时,在不同的功能界面中,提供帮助模块接口,用于提供关于当前模块的功能信息和使用方法。使用自行设计的窗体。

(5)容错提示功能。系统运行时,如果出现操作错误,或者输入数据不符合要求,则能够弹出错误、提示或者警告窗口,提醒用户。该功能可以提高软件的可用性。使用简单的对话窗口实现。例如:MsgBox()函数。

(6)帮助内容的撰写。帮助内容的撰写风格、方式和内容,会直接影响系统的使用,应该简洁、明了、清晰,并且提供足够的说明用例。

设计“学籍管理”的“系统帮助”窗体,只需使用“矩形”“直线”和“标签”等最基本的控件,其窗体视图和设计视图如图9.64和9.65所示。

▲技巧:对于“标签”控件,如果设置“标题”的属性值为多行文本信息,则在输入内容时,可以使用“Shift+Enter”组合键,进行换行输入。

img473

图9.64 系统帮助—窗体视图

img474

图9.65 系统帮助—设计视图

9.3.7 学籍管理控制模块设计

在完成应用系统的各个功能模块的设计之后,就可以根据系统的功能结构,利用“主控模块”,把各个功能模块集成起来,并通过调试,集成为一个完整的应用系统。

特别提醒:在利用主控模块,实现主控模块与下级功能模块之间的相互调用时、如果发现了错误和缺陷,一定要及时加以修改和完善。

“学籍管理”的控制模块包括:主控窗体、编辑信息、查询信息和打印报表等。

9.3.7.1 “编辑信息”控制窗体设计

“编辑信息”窗体,用于调用下级的“编辑学生”“编辑课程”“编辑选课”和“编辑成绩”等窗体。功能设计应该满足如图9.66所示的运行界面。设计方法:

(1)创建如图9.67所示的“编辑信息”宏。

img475

图9.66 编辑学生—窗体视图

img476

图9.67 编辑信息—宏设计器

启动“宏设计器”,创建包含4个子宏的“编辑信息”宏,子宏的名称分别为“编辑学生”“编辑课程”“编辑选课”和“编辑成绩”,均包含1个“OpenForm”操作,分别用于打开“编辑学生”“编辑课程”“编辑选课”和“编辑成绩”窗体。

(2)创建如图9.66所示的“编辑信息”窗体(背景图像:背景—下级窗体.jpg)。

启动窗体的“设计视图”,添加1个图像(图像自定)、2个凸起的矩形、1个凹陷的标签(标题:编辑信息)、4个图像按钮(图标—学生.bmp,图标—课程.bmp,图标—选课.bmp,图标—成绩.bmp)、4个凸起的标签(标题:编辑学生,编辑课程,编辑选课,编辑成绩)。

4个按钮和4个标签的“单击”事件,分别依次设置为“编辑信息.编辑学生”“编辑信息.编辑课程”“编辑信息.编辑选课”和“编辑信息.编辑成绩”。

9.3.7.2 “查询信息”控制窗体设计

“查询信息”窗体,用于调用下级的“查询学生”“查询课程”“查询选课”和“查询成绩”等窗体。功能设计应该满足如图9.68所示的运行界面。设计方法:

(1)创建如图9.69所示的“查询信息”宏。

img477

图9.68 查询学生—窗体视图

img478

图9.69 查询信息—宏设计器

启动“宏设计器”,创建包含4个子宏的“查询信息”宏,子宏的名称分别为“查询学生”“查询课程”“查询选课”和“查询成绩”,均包含1个“OpenForm”操作,分别用于打开“查询学生”“查询课程”“查询选课”和“查询成绩”窗体。

(2)创建如图9.68所示的“查询信息”窗体(背景图像:背景—下级窗体.jpg)。

启动窗体的“设计视图”,添加1个图像(图像自定)、2个凸起的矩形、1个凹陷的标签(标题:查询信息)、4个图像按钮(图标—学生.bmp,图标—课程.bmp,图标—选课.bmp,图标—成绩.bmp)、4个凸起的标签(标题:查询学生,查询课程,查询选课,查询成绩)。

4个按钮和4个标签的“单击”事件,分别依次设置为“查询信息.查询学生”“查询信息.查询课程”“查询信息.查询选课”和“查询信息.查询成绩”。

9.3.7.3 “打印报表”控制窗体设计

“打印报表”窗体,用于调用下级的“学生报表”“课程报表”“选课报表”和“成绩报表”等报表。功能设计应该满足如图9.70所示的运行界面。设计方法:

(1)创建如图9.71所示的“打印报表”宏。

img479

图9.70 打印报表—窗体视图

img480

图9.71 打印报表—宏设计器

启动“宏设计器”,创建包含4个子宏的“打印报表”宏,子宏的名称分别为“学生报表”“课程报表”“选课报表”和“成绩报表”,均包含1个“OpenReport”操作,分别用于打开“学生报表”“课程报表”“选课报表”和“成绩报表”报表。

(2)创建如图9.70所示的“打印报表”窗体(背景图像:背景—下级窗体.jpg)。

启动窗体的“设计视图”,添加1个图像(图像自定)、2个凸起的矩形、1个凹陷的标签(标题:打印报表)、4个图像按钮(图标—学生.bmp,图标—课程.bmp,图标—选课.bmp,图标—成绩.bmp)、4个凸起的标签(标题:学生报表,课程报表,选课报表,成绩报表)。

4个按钮和4个标签的“单击”事件,分别依次设置为“打印报表.学生报表”“打印报表.课程报表”“打印报表.选课报表”和“打印报表.成绩报表”。

9.3.7.4 “主控窗体”控制窗体设计

“主控窗体”窗体,用于调用下级的“编辑信息”“查询信息”“打印报表”和“系统帮助”等窗体。功能设计应该满足如图9.72所示的运行界面。设计方法:

(1)创建如图9.73所示的“下拉菜单”宏。

img481

图9.72 主控窗体—窗体视图

img482

图9.73 下拉菜单—宏设计器

启动“宏设计器”,创建包含5个子宏的“下拉菜单”宏,子宏的名称分别为“编辑信息”“查询信息”“打印报表”“系统帮助”和“退出系统”,前4个均包含1个“OpenForm”操作,分别用于打开“编辑信息”“查询信息”“打印报表”和“系统帮助”窗体。

(2)创建如图9.72所示的主控窗体。

启动窗体的“设计视图”,设置背景图像(背景—主控窗体.jpg)、2个凸起的矩形、1个凹陷的标签(标题:学籍管理系统)、4个图像按钮(图标—编辑.bmp,图标—查询.bmp,图标—打印.bmp,图标—退出.bmp)、4个凸起的标签(标题:编辑信息,查询信息,打印报表,退出系统)、1个帮助按钮。

4个按钮和4个标签的“单击”事件,分别依次设置为“下拉菜单.编辑信息”“下拉菜单.查询信息”“下拉菜单.打印报表”和“下拉菜单.退出系统”;1个帮助按钮的“单击”事件,设置为“下拉菜单.系统帮助”。

9.3.8 学籍管理密码模块设计

密码模块用于防止非法用户使用应用系统,从而保护软件开发人员的研究成果,只有合法用户才能使用应用系统。

常用加密方法:数据加密和应用程序加密等。数据加密是指设计加密程序对数据库中的数据直接进行加密(数据级加密)。应用程序加密是指对应用程序编写的加密模块。

目前,比较流行动态密码机制。即密码随着系统的运行,按照预定的算法自动发生改变,增加解密的难度、防止密码泄露。验证码登录方式就是一种动态密码机制。

例如:利用“*”,把系统当前日期的年月日和“HappyYou”连接起来作为动态密码。即2013*Nov*16*HappyYou(年4位月英文前3位日2位密码串)。

“学籍管理”的密码模块设计,应该满足如图9.74和图9.75所示的运行界面。

(1)创建如图9.76所示的“系统密码”宏。

img483

图9.74 InputBox密码窗口

img484

图9.75 系统密码—窗体视图

img485

图9.76 系统密码—宏设计器

启动“宏设计器”,创建包含If…Else…End If操作的“系统密码”宏,条件是“Input-Box('请输入密码:','密码')='666'”;在If…Else中,包含CloseWindow操作(关闭“系统密码”窗体),OpenForm(打开“主控窗体”窗体);在Else…End If中,包含Message-Box操作(提示“密码错误,重新输入”)。

(2)创建如图9.75所示的“系统密码”窗体。

启动窗体的“设计视图”,添加1个凸起的矩形;1个凹陷的标签(标题:欢迎使用学籍管理系统);2个按钮(标题:进入和退出)。

“进入”和“退出”按钮的“单击”事件,分别依次设置为“系统密码”和“下拉菜单.退出系统”。

9.3.9 学籍管理快捷菜单设计

快捷菜单是目前非常流行的用于快速调用系统模块的操作方式,而且已经被几乎所有用户所接受。

“学籍管理”的快捷菜单设计,应该满足如图9.72的运行界面。设计方法:

(1)在“宏设计器”中,利用“AddMenu”,创建包含4个“AddMenu”的“快捷菜单”宏;菜单名称分别为“编辑信息”“查询信息”“打印报表”和“退出系统”;菜单宏名称分别为“编辑信息”“查询信息”“打印报表”和“退出系统”。

▲提示:“退出系统”宏,包含“RunMenuCommand”(CloseDatabase,关闭当前数据库)和“QuitAccess”(退出系统)等2个操作。

(2)在“导航窗格”中,展开“宏”对象,选中“快捷菜单”宏;单击“数据库工具”选项卡,单击“MyTool”组的“用宏创建快捷菜单”(如果没有该功能,请使用前述方法自行创建)。

(3)在窗体的“设计视图”中,打开“主控窗体”;选中“窗体”控件,单击“属性表”的“其他”选项卡;设置“快捷菜单”的属性值为“是”,设置“快捷菜单栏”的属性值为“快捷菜单”。

9.3.10 学籍管理功能热键和自动运行

功能热键(快捷键)是目前相当流行的用于快速调用系统模块的操作方式,而且已经被大多数用户所接受,尽管需要记忆若干功能热键。

“学籍管理”的功能热键设计,应该满足如图9.77的运行界面。设计方法:

在“宏设计器”中,创建包含13个子宏的“AutoKeys”宏。其中:

(1)前4个子宏的名称分别为“{F1}”到“{F4}”,均包含1个“OpenForm”操作,分别打开“编辑学生”“编辑课程”“编辑选课”和“编辑成绩”。

(2)中4个子宏的名称分别为“^1”到“^4”,均包含1个“OpenForm”操作,分别打开“查询学生”“查询课程”“查询选课”和“查询成绩”。

(3)后4个子宏的名称分别为“+{F1}”到“+{F4}”,均包含1个“OpenReport”操作,分别打开“学生报表”“课程报表”“选课报表”和“成绩报表”。

(4)末1个子宏的名称为“^{Delete”,包含“RunMenuCommand”(CloseDatabase,关闭当前数据库)和“QuitAccess”(退出系统)2个操作。

img486

图9.77 学籍管理—功能热键—宏设计器

“学籍管理”的自动运行设计,只需在“宏设计器”中,创建仅包含1个“OpenForm”操作的“AutoExec”宏,用于打开“系统密码”窗体。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈