340 likes | 521 Views
第十二章. 菜 单 设 计. 12.1 菜单设计概述. 12.1.1 菜单的结构 Visual FoxPro 支持两种类型的菜单:条形菜单 ( 一级菜单 ) 和弹出式菜单 ( 子菜单 ) 。它们都有一组菜单选项显示于屏幕供用户选择。用户选择其中的某个选项时都会有一定的动作。这个动作可以是 3 种情况中的一种:执行一条命令、执行一个过程或激活另一个菜单。. 12.1.2 建立菜单系统的步骤 创建菜单系统都需经过以下步骤: 规划与设计菜单系统。 建立菜单项和子菜单。 按实际要求为菜单系统指定任务。 利用已建立的菜单文件,生成扩展名为 .mpr 的菜单程序文件。
E N D
第十二章 菜单设计
12.1 菜单设计概述 12.1.1 菜单的结构 Visual FoxPro支持两种类型的菜单:条形菜单(一级菜单)和弹出式菜单(子菜单)。它们都有一组菜单选项显示于屏幕供用户选择。用户选择其中的某个选项时都会有一定的动作。这个动作可以是3种情况中的一种:执行一条命令、执行一个过程或激活另一个菜单。
12.1.2建立菜单系统的步骤 创建菜单系统都需经过以下步骤: • 规划与设计菜单系统。 • 建立菜单项和子菜单。 • 按实际要求为菜单系统指定任务。 • 利用已建立的菜单文件,生成扩展名为.mpr的菜单程序文件。 • 运行生成的菜单程序文件。
12.1.3系统菜单的控制 Visual FoxPro系统菜单是一个典型的菜单系统,其主菜单是一个条形菜单。选择条形菜单中的每一个菜单项都会激活一个弹出式菜单。在Visual FoxPro中,每一个条形菜单都有一个内部名字和一组菜单选项,每个菜单选项都有一个名称(标题)和内部名字。
通过SET SYSMENU命令可以允许或禁止在程序执行时访问系统菜单,也可以重新设置系统菜单。命令格式是: SET SYSMENU ON|OFF|AUTOMATIC |TO [〈弹出式菜单名表〉]|TO [〈条形菜单项名表〉] |TO [DEFAULT]|SAVE|NOSAVE
12.2 下拉式菜单设计 12.2.1菜单设计器窗口 • 打开菜单设计器窗口 菜单方式:从“文件”菜单中选择“新建”菜单,打开“新建”对话框后,选择“菜单”单选按钮,然后单击“新建文件”按钮,选择“菜单”按钮,将进入菜单设计器窗口 。
用命令来建立或打开菜单,建立菜单的命令格式是:用命令来建立或打开菜单,建立菜单的命令格式是: CREATE MENU 〈菜单文件名〉 打开和新建菜单的命令格式是: MODIFY MENU 〈菜单文件名〉 命令中的〈菜单文件名〉指菜单文件,其扩展名为.mnx,但允许缺省。若〈菜单文件名〉是新名字,则为建立菜单,否则为打开菜单。
2.菜单设计器窗口的组成 菜单设计器窗口左边是一个列表框,它的每一行可定义一个菜单项,包括菜单名称、结果和选项3列内容。菜单栏或子菜单各占菜单设计器窗口中的一页。窗口右边有一个组合框和4个按钮,其中的“菜单级”组合框用于从下级菜单页切换到上级菜单页,插入、插入栏、删除、预览等按钮分别用于插入菜单项、删除菜单项和菜单模拟显示。
3.“显示”菜单 菜单设计器窗口打开时,Visual FoxPro的“显示”菜单中会包含“常规选项”和“菜单选项”两个命令,这两个命令都配有对话框。它们与菜单设计器窗口相结合,可使菜单设计更加完善。
12.2.2建立菜单文件 • 定义菜单项 :只要在“菜单名称”列下输入菜单项名字,在“结果”列下设置菜单项的对应操作,在“选项”列下定义菜单项的附加属性即可。 • 保存菜单定义:菜单设计(无论新建或修改)的结果,应作为菜单定义保存在扩展名为.mnx的菜单文件和扩展名为.mnt的菜单备注文件中。
12.2.3 生成菜单程序 菜单设计器窗口处于打开状态时,允许选择“菜单”菜单项中的“生成”命令来生成菜单程序。“生成菜单”对话框,有一个“输出文件”文本框,用来显示系统默认的菜单程序路径及程序名,用户可以直接击键修改,利用其右的对话按钮来选一个文件名,再选择对话框中的“生成”按钮就会生成菜单程序。
12.2.4 运行菜单程序 生成的菜单程序文件也是一个程序文件,可以和程序文件.prg一样被运行。方法为:选择“程序”菜单中的“运行”菜单选项,然后选择相应的文件名。也可在命令窗口中输入命令:DO 〈菜单程序文件名〉。
12.3 “快速菜单”命令 菜单设计器窗口一旦打开,系统菜单中就会增加一个名为“菜单”的菜单项。该菜单项共有6个命令,这里只介绍“快速菜单”命令。选择“快速菜单”命令后,一个与Visual FoxPro系统菜单一样的菜单会自动复制到菜单设计器窗口,供用户修改成符合自己需要的菜单。
12.4 为顶层表单添加菜单 顶层表单的设计来实现,基本思路是: • 首先建立一个下拉式菜单文件。设计菜单时,在“常规选项”中,选中“顶层表单”复选框,然后生成菜单程序文件。 • 创建一个表单,将表单的ShowWindow属性值设为2,使该表单成为顶层表单,然后在表单的Init事件代码中添加如下代码: DO 〈菜单程序名〉 WITH THIS,.T. 。其中〈菜单程序名〉指定被调用的菜单程序文件,其扩展名.mpr不能省略。
12.5 快捷菜单设计 快捷菜单是一种单击鼠标右键才出现的弹出式菜单,利用“快捷菜单设计器”仅能生成快捷菜单的菜单本身,实现单击右键来弹出一个菜单的动作还需要编程。
第十三章 报表与标签设计
13.1 报 表 设 计 报表主要由两部分组成:数据源和报表布局。数据源是报表的数据来源。报表的数据源通常是数据库中的表或自由表,也可以是视图、查询或临时表。在进行报表设计前首先应打开报表的数据源。报表布局则定义报表打印格式,通常有列报表、行报表、一对多报表、多栏报表4种常规布局类型。
13.1.1 利用报表向导设计报表 启动报表向导有以下4种常用方法: • 打开项目管理器,选择“文档”选项卡中的“报表”项,单击“新建”按钮,在弹出“新建报表”对话框中,再单击“报表向导”按钮 。 • 打开“文件”菜单中的“新建”菜单项,在文件类型栏中选择“报表”,然后单击“向导”按钮 。 • 打开“工具”菜单中的“向导”子菜单,选择“报表”。。 • 直接单击工具栏上的“报表”图标,也可以启动报表向导。
13.1.2 利用快速报表设计报表 除了用报表向导创建报表外,还可以用“快速报表”功能来建立简单的报表,这是一项省时的功能,只需在其中选择基本的报表组件,Visual FoxPro 就会根据选择的布局,自动建立简单的报表布局。
13.1.3 利用报表设计器设计报表 启动报表设计器有以下3种常用方法: • 打开“项目管理器”,选择“文档”选项卡中的“报表”项,单击“新建”按钮,在弹出“新建报表”对话框中再单击“新建报表”按钮 。 • 打开“文件”菜单中的“新建”子菜单,在文件类型栏中选择“报表”,然后单击“新建文件”按钮。 • 直接使用命令 CREATE REPORT 也可启动报表设计器。
报表设计器提供的是一个空白布局,从空白报表布局开始,可以设置报表数据源、设计报表的布局、添加报表的控件和设计数据分组等。报表设计器提供的是一个空白布局,从空白报表布局开始,可以设置报表数据源、设计报表的布局、添加报表的控件和设计数据分组等。 1. 设置报表数据源 :报表总是与一定的数据源相联系,因此在设计报表时,首先要确定报表的数据源。如果一个报表总是使用相同的数据源,就可以把它添加到报表的数据环境中。
2. 设计报表的布局 :创建报表之前,应该确定所需报表的常规格式。报表可能基于单表,也可能基于多表。另外还可以创建特殊种类的报表。 3. 报表设计器窗口 :在报表设计器中可以添加各种控件,如表头、表尾、页标题、字段、各种线条及OLE控件等。 4. 报表工具栏 。 5. 报表控件的使用:在报表设计器中,为报表新设置的带区是空白的,通过在报表中添加控件来定义在页面上显示的数据项,可以安排所要输出的内容。
6.报表变量的使用 :在数据库应用系统中,变量的应用非常广泛,它能够给应用程序带来极大灵活性。在报表中可以使用变量,以灵活设计各种形式的报表。特别是总计中,往往是用变量来计算要求得到的值然后输出。使用报表变量,可以计算各种值,并可利用这些值来计算其他相关值。
13.1.4 报表数据分组 在设计报表时,有时所要报表的数据是成组出现的,需要以组为单位对报表进行处理。组的分隔是根据分组表达式进行的,这个表达式通常由一个以上的表字段生成,有时也可以相当复杂。分组之后,报表布局就有了组标头和组注脚带区,可以向其中添加控件。 • 添加单个数据分组 2.添加多个数据分组
13.1.5 报表输出 设计报表的最终目的是要按照一定的格式输出符合要求的数据。报表文件的扩展名为.frx,该文件存储报表设计的详细说明。每个报表文件还带有扩展名为.frt的报表文件。报表输出时,应该先进行页面设置,通过预览报表调整版面效果,最后再打印输出到纸介质上。
页面设置:规划报表时,通常会考虑页面的外观,例如页边距,纸张类型和所需的布局。在“页面设置”对话框中可以设置报表的左边距并为多列报表设置列宽和列间距,设置纸张大小和方向。页面设置:规划报表时,通常会考虑页面的外观,例如页边距,纸张类型和所需的布局。在“页面设置”对话框中可以设置报表的左边距并为多列报表设置列宽和列间距,设置纸张大小和方向。 • 预览报表:通过预览报表,不用打印就能看到它的页面外观。 • 打印输出 :如果使用预览报表,在屏幕上获得最终符合设计要求的页面后,就要打印出来。
13.2 标 签 设 计 标签是一种特殊的报表,它的创建、修改方法与报表基本相同。和创建报表一样,可以使用标签向导创建标签,也可以直接使用标签设计器创建标签。无论使用哪种方法来创建标签,都必须指明使用的标签类型,它确定了标签设计器中的“细节”尺寸。
第十四章 数据库应用系统开发
14.1 数据库应用系统的开发步骤 1. 需求分析 在软件开发的分析阶段,信息收集是决定软件项目可行性的重要环节。程序设计者要通过对开发项目信息的收集,确定系统目标、软件开发的总体思路及所需的时间等。这一阶段的基本任务简单说来有两个:一是摸清现状;二是理清将要开发的目标系统应该具有哪些功能。需求分析完成后,应撰写《需求分析报告》并请项目委托单位签字认可,以作为下阶段开发方和委托方共同合作的依据。
2.系统设计 在软件开发的设计阶段,首先要对软件开发进行总体规划,认真细致地搞好规划可以省时、省力、省资金;然后具体设计程序完成的任务、程序输入输出的要求及采用的数据结构等,并用算法描述工具详细描述算法。这一部分工作完成后,要撰写《系统设计报告》 ,同样,《系统设计报告》也需得到项目委托方的签字认可。
3.系统实现(编码、调试) 在软件开发的实施阶段,要按系统论的思想,把程序对象视为一个大的系统,然后将这个大系统分成若干小系统,保证高级控制程序能够控制各个功能模块。一般采用“自顶向下”的设计思想开发高级控制程序,并逐级控制更低一层的模块,每一种模块执行一个独立、精确的任务,且受控于高级程序。编写程序时要坚持使程序易阅读、易维护的原则,并使过程和函数尽量小而简明,使模块间的接口数目尽量得少。
4.测试 测试阶段的任务就是验证系统设计中所设置的功能能否稳定准确地运行,这些功能是否全面地覆盖并正确地完成了委托方的需求,从而确认系统是否可以交付运行。测试工作一般由项目委托方或由项目委托方指定第三方进行。测试过程中应进行详细记录,测试完成后要撰写《系统测试报告》,对应用系统的功能完整性、稳定性、正确性以及使用是否方便等方面给出评价。
5.系统交付 这一阶段的工作主要有两个方面:一是全部文档的整理交付;二是对所完成的软件(数据、程序等)打包并形成发行版本,使用户在满足系统所要求的支撑环境的任一台计算机上按照安装说明就可以安装运行。
结 束 The End