《Visual FoxPro数据库基础》第3章着手制作应用程序.ppt_第1页
《Visual FoxPro数据库基础》第3章着手制作应用程序.ppt_第2页
《Visual FoxPro数据库基础》第3章着手制作应用程序.ppt_第3页
《Visual FoxPro数据库基础》第3章着手制作应用程序.ppt_第4页
《Visual FoxPro数据库基础》第3章着手制作应用程序.ppt_第5页
已阅读5页,还剩74页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第3章着手制作应用程序,(时间:4次课,8学时),第3章着手制作应用程序,教学提示:在前面的章节里,我们已学习了数据库的基础知识、VisualFoxPro的基础知识与操作、面向对象程序设计的基本概念以及常用控件的使用方法。学习VisualFoxPro的目的是为了能够编制应用程序。本章里主要是树立编制应用程序的思想,学习项目管理器的使用,并动手制作应用程序的界面。教学目标:了解项目管理器的作用,初步掌握项目管理器的使用;掌握表单的一般设计方法,学会利用表单制作应用程序界面。通过本章的学习,能够对制作应用程序有一个宏观的理解。,第3章着手制作应用程序,3.1项目管理器3.2利用表单设计应用程序界面

2、3.3上机指导3.4习题,3.1项目管理器,3.1.1创建项目3.1.2使用【项目管理器】3.1.3定制【项目管理器】,3.1项目管理器,在VisualFoxPro系统中,项目是指文件、数据、文档和对象的集合。“项目管理器”是VisualFoxPro系统中处理数据和对象的主要组织工具,它为系统开发者提供了便利的工作平台。项目管理器具有以下两方面的作用:一是为用户提供了简便的、可视化的方法来组织和处理表、数据库、表单、报表、查询和其他一切文件;二是在项目管理器中可以将应用系统编译成一个应用文件(.app)或可执行文件(.exe)。,3.1.1创建项目,在项目管理器中可将一个应用程序中的所有文件组

3、合成一个有机的整体,形成一个.pjx的项目文件。1.创建项目创建一个新项目就是创建一个项目文件,用来分类管理其他文件。方法:(1)选择【文件】|【新建】命令,或单击【常用】工具栏中的【新建】按钮,打开【新建】对话框,如第2章图2.3.1所示。(2)在【文件类型】下拉列表中选择【项目】,单击【新建文件】图标按钮,打开【创建】对话框,如图3.1.1所示。(3)在【创建】对话框中的【项目文件】文本框中输入项目名称,如“学生管理”,然后在【保存在】组合框中选择保存该项目的文件夹,如:“D:学生管理系统”。(4)单击【保存】按钮,此时在指定目录位置建立一个“学生管理.pjx”的项目文件,并弹出【项目管理

4、器】对话框。,3.1.1创建项目,2.打开和关闭项目在VisualFoxPro系统中,可随时打开一个已有的项目,也可以关闭一个打开的项目。方法:(1)选择【文件】|【打开】命令,或单击【常用】工具栏上的【打开】按钮,弹出【打开】对话框。(2)在【打开】对话框中,双击要打开的项目;或选择它,单击【确定】按钮,即可打开所选项目。(3)若要关闭项目,只需单击【项目管理器】右上角的【关闭】按钮。未包含任何文件的项目称为空项目。当关闭一个空项目时,系统会显示一个提示框,当单击【删除】按钮时,系统将删除该空项目文件。如单击【保持】按钮,系统将保存该空项目文件。,3.1.1创建项目,3.【项目管理器】中的选

5、项卡【项目管理器】对话框共有6个选项卡(如图所示),其中【全部】选项卡集中显示该项目中的所有文件,其他五个选项卡即【数据】、【文档】、【类】、【代码】和【其他】,用于分类显示各种文件,分述如下:(1)【全部】选项卡包含了其他5个选项卡的内容。(2)【数据】选项卡包含了一个项目中的所有数据,即数据库、自由表、查询和视图,如图3.1.5所示。,3.1.1创建项目,例如:“学生管理”项目的【数据】选项卡中,当选中一个具体文件时,在【项目管理器】底部会显示两行说明,第一行是对该文件的描述或其他说明,第二行显示出文件的路径。为文件添加描述或说明的方法是:选中文件后,右击鼠标,从快捷菜单中选择【编辑说明】

6、;或从【项目】菜单中选择【编辑说明】,打开【说明】对话框,在文本框中填入说明信息即可。(3)【文档】选项卡包含了处理数据时所用的三类文件,即输入和查看数据所用的表单,打印表和查询结果所用的报表和标签。(4)【类】选项卡通过使用VisualFoxPro的基类可以创建一个可靠的面向对象的事件驱动程序。(5)【代码】选项卡包括三大类程序:程序文件(.prg)、函数库(API库)和应用程序(.app)。(6)【其他】选项卡包括文本文件、菜单文件和其他文件。,3.1.2使用【项目管理器】,通过【项目管理器】,在项目中创建、添加、修改、移去和连编指定的文件,可以利用【项目管理器】右侧的6个命令按钮(如图3

7、.1.5所示)来方便地进行各种操作。1.创建文件要在【项目管理器】中创建文件,首先要确定新文件的类型。例如,要创建一个数据库文件,必须在项目管理器中先选择【数据库】选项,如图3.1.7所示。只有选择了文件类型后,【新建】和【添加】按钮才可使用。单击【新建】按钮或者从【项目】菜单中选择【新建文件】命令,即可打开相应的设计器来创建一个新文件。在【项目管理器】中新建的文件自动包含在该项目文件中,而使用【文件】|【新建】命令创建的文件不属于任何项目文件。,3.1.2使用【项目管理器】,2.添加文件利用【项目管理器】可以把一个已经存在的文件添加到项目中。操作方法:(1)选择要添加的文件类型。例如,要添加

8、一个数据库到项目文件中,则应在【项目管理器】的【数据】选项卡中选择【数据库】选项。(2)单击【添加】按钮或从【项目】菜单中选择【添加文件】命令,系统弹出【打开】对话框,在【打开】对话框中选择要添加的文件。(3)单击【确定】按钮,将被选择的文件添加到项目文件中。,3.1.2使用【项目管理器】,3.修改文件利用项目管理器可以修改项目文件中的指定文件。操作方法:(1)选择要修改的文件。(2)单击【修改】按钮或从【项目】菜单中选择【修改文件】命令,系统将根据修改文件的类型打开相应的设计器。(3)在设计器中修改相应的文件。如果被修改的文件同时包含在多个项目中,修改的结果对于其他项目也有效。,3.1.2使

9、用【项目管理器】,4.移去文件项目中的文件是为应用程序服务的,如果某个文件不再需要,可以将该文件从项目中移去。操作方法:(1)选择要移去的文件。(2)单击【移去】按钮或从【项目】菜单中选择【移去文件】命令(3)若单击提示框中的【移去】按钮,系统只是从项目中移去所选择的文件,被移去的文件仍存于原文件夹中;若单击【删除】按钮,系统不仅从项目中移去文件,还将从磁盘中彻底删除该文件。,3.1.2使用【项目管理器】,5.其他按钮在项目管理器中,除了上面介绍的按钮之外,随着所选择文件的类型不同,按钮的名称也随之改变。其他按钮的名称和功能如下:(1)【浏览】按钮:在【浏览】窗口中打开一个表,当选定一个表时可

10、使用该按钮。【浏览】按钮与【项目】菜单中的【浏览文件】命令的作用相同。(2)【打开】和【关闭】按钮:打开和关闭一个数据库。此按钮与【项目】菜单中的【打开文件】和【关闭文件】命令的作用相同。(3)【预览】按钮:在打印预览方式下显示选定的报表或标签,与【项目】菜单中的【预览文件】命令作用相同。(4)【运行】按钮:执行选定的查询、表单或程序。当选定【项目管理器】中的一个查询、表单或程序时使用。此按钮与【项目】菜单中的【运行文件】命令的作用相同。(5)【连编】按钮:连编一个项目或应用程序。此按钮与【项目】菜单中的【连编】命令的作用相同。,3.1.3定制【项目管理器】,在【项目管理器】的使用过程中,用户

11、可以改变【项目管理器】的窗口大小,移动它的显示位置,也可折叠或拆分项目管理器窗口以及使项目管理器中的选项卡浮在其他窗口之上。1.移动和缩放项目管理器项目管理器窗口和Windows窗口一样,可以随时改变窗口的大小以及移动窗口的显示位置。将鼠标指针放置在窗口的标题栏上并拖曳鼠标即可移动【项目管理器】;将鼠标指针指向【项目管理器】窗口的四边或角上,拖动鼠标可以扩大或缩小其尺寸。2.折叠【项目管理器】【项目管理器】右上角的按钮用于折叠或展开【项目管理器】。单击该按钮时,【项目管理器】缩小为仅显示选项卡标签,同时该按钮变为【还原】按钮。如图3.1.9所示。单击【还原】按钮,则恢复项目管理器的正常显示状态

12、。,3.1.3定制【项目管理器】,3.拆分【项目管理器】在折叠【项目管理器】以后,可使各选项卡成为独立、浮动的窗口,并可随意安排他们的位置。方法是:单击一个选项卡,并将其拖放到其他位置。若要还原拆分的选项卡,可单击选项卡上的关闭按钮,也可以用鼠标将拆分的选项卡拖曳回【项目管理器】中。对于从【项目管理器】中拆分出的选项卡,单击选项卡上的图钉图标,可以钉住选项卡,使其始终显示在屏幕的最顶层,而不被其他窗口遮挡。再次单击图钉图标,可取消其【顶层显示】的设置。,3.1.3定制【项目管理器】,4.停放【项目管理器】将【项目管理器】拖到主窗口的顶部就可以使它像工具栏一样停放在主窗口顶部,此时不能把【项目管

13、理器】整个展开,但是可以单击每个选项卡来进行相应的操作。对于停放的【项目管理器】,同样可以从中拖开选项卡。要还原【项目管理器】,只需右击【项目管理器】,从弹出的快捷菜单中选择【拖走】命令。,3.2利用表单设计应用程序界面,通过例题讲解了表单上控件的使用,应当说那些题目就是一个个小的应用程序。我们学习VisualFoxPro最终目标是要建立一个数据库管理系统的应用程序。,3.2.1关于VisualFoxPro的应用程序3.2.2再谈表单设计3.2.3为应用程序制作封面和封底3.2.4为应用程序设计简易菜单,3.2.1关于VisualFoxPro的应用程序,一个典型的数据库应用程序由数据结构、用户

14、界面、查询选项和报表等组成。试想对于一个数据库管理系统,无论是任何具体的问题,总是少不了这样一些事情的。如:用户的数据要有界面输入,输入后让计算机做相关的处理,处理后的结果总应让用户知晓,或是查询,或是显示,或是打印。另外,一个应用程序的开始还应当有一个类似图书封面的界面,它不仅有着漂亮的图案,更应有明确的主标题来说明这个应用程序是干什么的。当然最好还要有一个结束的界面,以体现良好的人性化处理。下面以学生管理系统为背景,设计一个最简单、最普遍的例子,来说明一个应用程序的大致结构。应用程序的主体框架见下图所示的框图。,3.2.1关于VisualFoxPro的应用程序,3.2.1关于VisualF

15、oxPro的应用程序,VisualFoxPro应用程序通常由以下几部分组成:一个或多个数据库,设置应用程序系统环境的主程序以及用户界面(诸如表单、工具栏和菜单等)。此外,还可以包括查询和报表,允许用户检索或输出自己的数据。一个VisualFoxPro的应用程序是这样定义的:一组VisualFoxPro程序、表单、菜单和其他文件经编译后形成的单个程序。应用程序由【项目管理器】连编得到,具有.app扩展名。对于上述应用程序中所包含的内容,我们以后要陆续学到。现在我们首先要树立用VisualFoxPro编制应用程序的思想,其次考虑利用表单设计应用程序的用户界面。,3.2.2再谈表单设计,用户界面是一

16、个应用程序最重要的部分,它是最直接的现实世界。对用户而言,界面就是应用程序。他们感觉不到幕后正在执行的代码,不论花多少时间和精力来编制和优化代码,应用程序的可用性仍然依赖于界面。用户是通过界面了解和使用应用软件的,设计可以让人“一见钟情”、“引人入胜”的界面是程序设计者所努力追求的。对界面的制作和修饰要精益求精,以赢得用户对应用软件的良好印象和使用兴趣。VisualFoxPro的用户界面是通过一个个“表单”来体现的,表单是承载不同控件的平台。借用表单能完成可视化窗体设计,串联一个个表单即可展示应用系统的整体功能。最开始的表单应通过设计的主标题明确制作的是什么系统;通过副标题明确该系统的设计单位

17、或设计人;界面应有明确的系统入口与出口或本界面执行后的上一步与下一步;开始界面一般要在用户点击【开始】后进入系统,在系统使用完毕点击【结束】退出系统。,3.2.2再谈表单设计,1.设置背景和插入图片一个让人赏心悦目的表单一般都设置背景和图片。l用调色板设置背景操作步骤:在项目的【文档】选项卡中,选择已建表单“学生管理”,单击【修改】按钮。单击【表单设计器】中的【调色板】工具栏按钮,或选择【显示】菜单中的【调色板工具拦】命令,调出调色板。如图所示。,3.2.2再谈表单设计,在调色板第一行,单击【背景色】按钮,然后再选取希望的颜色即可。单击常用工具栏的按钮运行表单(在系统提示下保存文件),单击表单

18、右上角的【关闭】按钮终止程序运行,返回原编辑状态。l用图形文件设置背景使用调色板设置背景虽然简单,但缺乏新颖,没有特色。在实际应用中可以挑选一幅满意的图形文件来填充背景。操作步骤:在已打开的表单中单击【表单设计器】中的【属性窗口】按钮,或选择【显示】菜单中的【属性】命令,调出【属性】对话框,如图所示。,3.2.2再谈表单设计,在【属性】对话框的【布局】选项卡中选择“Picture”项,用浏览按钮选择一个可以作为背景的图形文件,也可以直接在录入框中输入此文件的路径和文件名,表单将使用指定的图形文件作为背景。运行表单(在系统提示下保存文件),还可返回原编辑状态进行修改。,3.2.2再谈表单设计,l

19、插入图片操作步骤:在已打开的表单中单击【表单设计器】工具栏中的【表单控件工具栏】按钮,或选择【显示】菜单中的【表单控件工具栏】命令,调出【表单控件】工具栏。在【表单控件】工具栏中单击【图像】按钮,此时在表单“Forml”中,鼠标呈十字显示,按希望的位置和尺寸拉出图片的位置以灰色矩形出现并可随时用鼠标调整。在【属性】对话框的【布局】中选择Picture命令,用浏览按钮选择一个图形文件,也可直接在录入框中输入图形文件的路径和文件名,灰色矩形变为图形显示。继续选择属性Picture下面的一项Stretch,从下拉列表中选择【变比填充】则图像完整地填充满全区域。保存文件后运行表单。,3.2.2再谈表单

20、设计,2.添加大标题和按钮“Forml”是系统自动给出的表单标题,而在实际应用中应当在表单的适当位置给出醒目的应用系统的标题,如“学生管理系统”,还可以改变标题栏中的“Forml”为与表单文件名一致的“学生管理”。(1)添加标签作为表单上的大标题操作步骤:打开要添标题的表单,并调出【表单控件】工具栏。单击【表单控件】工具栏的标签按钮,在表单希望的位置拉出标题暂为“Labell”的标题区,在此区域内右击,从弹出菜单中调出【属性】对话框。在【属性】对话框的【布局】中,完成对“属性”的设置。所有设置均在【属性】对话框中选对应项后,在调出的下拉列表中选取或在录入框中输入。,3.2.2再谈表单设计,l设

21、置“Backstyle”为“透明”;l设置“Caption”为希望的标题,如“学生信息管理系统”;l设置“FontBold”为“.T.”,即字体加粗;l设置“FontName”为希望的字体,如“隶书”;l设置“FontSize”为希望的字号,如“28”号字。关闭属性对话框。单击【调色板】工具栏中的前景色按钮,选择标题,在【调色板】中为字体挑选满意的颜色。(2)修改标题栏中的表单标题新建表单后,系统会自动给出表单标题“Forml”并出现在表单的标题栏中,如希望将“Forml”改为其他汉字,如“学生管理”,则应按以下步骤:在表单区域右击,从弹出菜单中调出【属性】对话框,选择【Caption】项,在

22、录入框输入希望的标题:“学生管理”。,3.2.2再谈表单设计,(3)在表单上添加命令按钮表单的返回、释放、调用其他表单等,通常是用按钮完成的。将上述表单添加两个按钮:【开始】和【结束】。表单设计结果如图所示。通过运行表单,可以看到没有程序功能的命令按钮只是一个摆设,运行表单时单击命令按钮也不会产生任何实际效果。要确使命令按钮有“开始”和“结束”的功能,就必须分别为两个命令按钮(控件)编写代码。,3.2.2再谈表单设计,3.多控件的处理l控件的缩放和移动在画控件的过程中,刚画完的控件其边框上有8个黑色小方块,表明该控件是“活动”的,活动控件也称“当前控件”。如图3.2.5所示,对控件的所有操作都

23、是针对活动控件进行的。,3.2.2再谈表单设计,当表单上有多个控件时,一般只有一个控件是活动的(除非进行了多重选定)。当要对一个非活动的控件进行指定的操作时,必须将其变为活动控件。单击非活动控件(鼠标指向其内部)可使该控件成为活动控件,单击活动控件的外部,则可使该控件变为非活动控件。用鼠标拖动活动控件边框上的小方块可以使控件在相应的方向放大与缩小;按住键,用左右方向键可以调整控件的宽度,用上下方向键可以调整控件的高度。当控件为活动控件时,用键盘的方向键可以使控件向相应的方向移动。也可以把鼠标指向控件内部,拖动控件到表单的任何位置。,3.2.2再谈表单设计,l控件的复制与删除可以对控件进行复制与

24、删除的操作。常用下面3种方法之一:u先将所要操作的控件变为“活动控件”,按+键可将该控件拷贝到Windows的剪贴板中,再按+键将其粘贴在表单中。对活动控件的删除,只需按键即可。u通过【编辑】菜单中的相应命令或常用工具栏上的相应按钮,对控件进行复制与删除的操作。最快捷的方法是直接用鼠标右击要操作的控件,打开快捷菜单,在快捷菜单中选择需要的项。l在表单上画出多个同类的控件如果需要在表单上画出多个同类的控件,可以利用【按钮锁定】功能。在【表单控件】工具栏中单击【按钮锁定】按钮,然后单击【表单控件】工具栏中的某个所需控件的图标,就可以在表单上连续画出该控件(不必每画一个,单击一次图标),直到再用鼠标

25、单击【按钮锁定】按钮才会取消该功能。,3.2.2再谈表单设计,l【布局】工具栏当表单上有多个控件时,可以使用【布局】工具栏对控件进行各种形式的对齐操作。在【表单设计器】工具栏中,单击【布局工具栏】按钮,可打开【布局】工具栏,如图3.2.6所示。注意:只有当选定多个控件时,【布局】工具栏中的大部分按钮才处于可用状态。,3.2.2再谈表单设计,多重选定多重选定是同时选定一组控件,多重选定后的控件才可调整其相互之间的位置。进行多重选定时,先按住键,再用鼠标单击所要选择的控件;或者直接用鼠标在表单上拉出一个矩形,凡是与此矩形相交的控件均会被选定。布局工具栏按钮介绍教材的表3.2.1给出了【布局】工具栏

26、中各按钮的功能。,3.2.2再谈表单设计,4.设置表单常用属性表单“属性”的设置会直接影响表单运行的效果。(1)设置表单不在VisualFoxPro主窗口内在运行表单时,如果设置不好,会看到表单被框在VisualFoxPro主窗口内。为避免这一情况,可作以下设置。打开【属性】对话框,在【布局】选项卡中选择【Desktop】项,并置为“真”(.T.)。,3.2.2再谈表单设计,(2)表单其他常用属性的设置影响表单外观常用的属性还有下面一些,在应用时可根据需要在【属性】对话框中设置。l把“ControlBox”设为“假”(.F.),则不显示表单的【关闭】按钮。l把“MaxButton”设为“假”(

27、.F.),则不显示表单的【最大化】按钮。l把“MinButton”设为“假”(.F.),则不显示表单的【最小化】按钮。l把“TitleBar”设为“假”(.F.),则不显示表单的标题栏。l使用“Icon”项,可为表单设置新图标,既指定一个图标文件。l使用“BorderStyle”项,可设置表单边框样式。l使用“BackColor”项,可为表单设置背景色(当无“Picture”设置时背景有效)。读者可依据需要自行决定其他属性的设置。,3.2.3为应用程序制作封面和封底,如果把一个应用程序看作一本书,最初始的表单即开始表单就可以被看成是“封面”,结束时的表单可以被看作为“封底”。1.设计一个“开始

28、”表单举例讲解作为应用程序封面的“开始”表单的进一步设计。,3.2.3为应用程序制作封面和封底,例3.1设计一个表单作为应用程序的封面,要求:它要充满屏幕,没有边框与标题栏,有动态字幕和醒目标题,能进入到应用系统的下一层。表单运行效果如图3.2.7所示。其中主要属性设置见教材表3.2.2;事件过程代码见教材表3.2.3。,3.2.3为应用程序制作封面和封底,主要步骤与设计要点:(1)使用项目管理器建立表单打开项目“学生管理”在项目管理器中选择【文档】选项卡,选择【表单】命令,单击【新建】按钮;在【新建表单】对话框中,单击【新建表单】按钮,则打开表单设计器。完成表单的各种设置后,保存表单,给表单

29、命名为:封面1。如图3.2.8所示。(2)设置表单的最大设计区由于本例中表单用作封面,要求尺寸较大,所以一般涉及修改默认设置。方法是:使用菜单:选择【工具】|【选项】命令;在【选项】对话框中选择【表单】选项卡;在【最大设计区】的下拉按钮中选择尺寸,如可选择“1024768”。调至以保证设计的表单足够大为准。,3.2.3为应用程序制作封面和封底,(3)用艺术字作大标题本例中“封面”的大标题是用艺术字制作的。方法是:在Word或PowerPoint软件中插入艺术字,选好字体、艺术字形状、填充色等项设计方案,复制粘贴到画图软件中,将其保存为图形文件(.bmp)。所以在这里实际是用了Image控件,用

30、艺术字图片充当标题。提示:艺术字的立体阴影效果是用了两个大小完全一样的艺术字填充不同颜色、相互错动一小段距离而形成的。,3.2.3为应用程序制作封面和封底,(4)设置动态效果本例中有两处动态设置:l文本“欢迎使用”从表单的右边界向左移动,到指定位置停止,方法与例2.4所述相近。艺术字图片从左向右慢慢展开的实现方法是在Timer事件中Image1的Width从0变化到最大。注意:Image1的Stretch属性设置为“剪裁”,若设成“变比填充”,就不是慢慢展开而是慢慢抻开了。,3.2.3为应用程序制作封面和封底,(5)设置鼠标指针变化,单击文本进入系统前面讲过“开始”表单应有系统入口,通常用按钮

31、完成这个任务。本例中从美观考虑使用了Label2当作系统入口。为提示用户,Label2的MousePointer属性设为99,自定义类型MouseIcon=“d:学生管理系统图片h_point.cur”,当鼠标移到“进入系统”文本上时,指针形状变为,在单击事件中,调用下一级表单。提示:Label2的Click事件代码中的”*”是注释符号,因为后面的表单可能还没有建成,将这条命令先注释掉,不被执行。,3.2.3为应用程序制作封面和封底,(6)标题栏与控制按钮本例因要求全屏幕显示,所以关闭了标题栏,当然也就没有了控制按钮。那么要是用户不想进入系统呢?表单的单击事件和按键事件中,写入了释放表单的命令

32、:releasethisform。这个“开始”表单色彩柔和,简明活泼,起到了封面的作用。在实际应用中,可将“欢迎使用”几个字改为副标题,如设计单位、设计人等。事件代码中涉及的全局变量和选择结构,以后会详细讲到。,3.2.3为应用程序制作封面和封底,2.设计一个“结束”表单可以根据需要设计一个“结束”表单作为应用程序的封底,在用户决定退出系统的时候,运行该表单,体现良好的用户界面,给人以亲切的感觉。例3.2设计一个“结束”表单,要求它全屏幕显示;动态地由远至近地显示“再见”字样;定时关闭表单或通过单击、按键关闭表单。表单运行效果如右图所示。相关属性与事件代码见教材表3.2.4与表3.2.5。,3

33、.2.3为应用程序制作封面和封底,主要步骤与设计要点:(1)打开项目管理器,在“学生管理”项目中选择【文档】选项卡,选择【表单】命令,单击【新建】按钮,新建表单并保存为:“结束1”。(2)放射状动态字体显示先在表单设计器中把Label1水平居中,在属性窗口将字号设为10;然后在Timer1的Timer事件中将字号每次加2,若加大至36时,再重设为10;同时Label1的左边界也要作相应的变化,否则动态变化是不对称的。,3.2.3为应用程序制作封面和封底,(3)定时释放表单设置Timer2控件,用于15秒后释放表单。在15秒内发生按键或单击鼠标事件,也会释放表单。(4)背景图片是用PowerPo

34、int软件制成。方法是新建一张幻灯片,设置其背景并选择适当的填充效果,然后将其贴到Windows附件“画图”中,保存成.bmp文件。与“开始”表单相比,“结束”表单不是必须的。是否设置可据具体情况而定。本例的效果就像是电影结束时一样,“再见”字样由远到近、由小至大放射状闪烁,往复进行,并能定时自动结束。同样的效果也可以用于“开始”表单。,3.2.4为应用程序设计简易菜单,从开始表单进入系统以后,就面临选择哪个功能模块进行操作的问题。这需要一个菜单,即提供用户选择的界面。当然,一个复杂的、成熟的应用程序系统一般会有下拉菜单作为界面,但对于一些小型应用程序,也可以使用简易菜单。下面举几个例子。,3

35、.2.4为应用程序设计简易菜单,1.按钮式例3.3设计一个表单作为菜单,用大按钮完成功能选项,要求退出时有提示。表单运行效果如图所示。相关的属性设置和事件过程代码见教材表3.2.6。,3.2.4为应用程序设计简易菜单,主要步骤和设计要点:(1)打开项目管理器,在“学生管理”项目中新建表单并保存为:“主界面”。(2)表单间的调用。在Command1Command5的Click事件中,写入运行表单的命令:“DOFORM”。(3)信息框的使用。在Command6中,也就是“退出系统”按钮的单击事件过程代码中,用到了一个函数,叫做信息框函数。它的作用是弹出信息框,让用户决定下一步的操作。如下图所示。若

36、用户单击“是”,则执行命令:释放表单并调出表单“结束1”。一般情况,在做出关键性操作的选择时,如退出系统、删除文件等,都应对用户有相应的提示。下面讲一下信息框的使用。,3.2.4为应用程序设计简易菜单,3.2.4为应用程序设计简易菜单,信息框函数MessageBox()的格式:MessageBox(,),该函数将显示一个用户自定义对话框。其中各参数意义如下:第1个参数:字符串表达式,指定在信息框中显示的文本,必选项。第2个参数:数值表达式,指定对话框中的按钮和图标、显示对话框时的默认按钮以及对话框的行为。若省略,默认值为0。这个参数可以表示为3个数之和:+其中按钮类型值、图标值、默认按钮值对照

37、表详见教材表3.2.7和表3.2.8、表3.2.9。示例:A=messagebox(你了解使用信息框的方法了吗?,3+32+0,信息框示例),3.2.4为应用程序设计简易菜单,3.2.4为应用程序设计简易菜单,例3.4设计一个表单作为菜单,用按钮组完成功能选项,要求退出时有提示。主要属性设置及事件过程代码见教材表3.2.11。主要步骤和设计要点:(1)按钮组的使用创建表单:“主界面2”。在【表单控件】工具栏中单击【命令按钮组】,并在表单中拉出或在表单的适当位置单击,即可将该控件添加到表单中。选择命令按钮所在区域,右击鼠标,从弹出的菜单中选择【生成器】命令。在【命令组生成器】对话框的【按钮】选项

38、卡中,重设命令按钮的个数:6;按钮上的标题为空,填写显示在按钮上的图形的文件名与路径。,3.2.4为应用程序设计简易菜单,在【命令组生成器】对话框的【布局】选项卡中对按钮显示方式进行布局。如可以对排列方式、按钮的间隔、边框样式进行设置。对“主界面2”表单设置排列方式为“水平”,按钮间隔为“11”,边框样式为“单线”。如图所示。,3.2.4为应用程序设计简易菜单,单击【确定】按钮,退出【命令组生成器】对话框。选中命令组区域,右击调出【属性】对话框,设置【BackStyle】为“透明”(2)关于命令按钮组(CommandGroup)常用属性ButtonCount命令按钮的计数属性,可确定组中按钮的

39、数目。ButtonCount的缺省值为2,即在表单上新建命令按钮组时,将包含两个命令按钮。用户可根据需要改变ButtonCount的值。Value当前选中的命令按钮序号。Value的缺省值为1,即运行表单时,命令按钮组中的第一个按钮为默认按钮。当用户选择第二个按钮时,Value属性值为2。Buttons命令组的收集属性。使用该属性可访问组内的每一个按钮,并为每一个按钮设置属性和调用方法程序。其一般语法为:CommandGroup.Buttons(i).=或CommandGroup.Buttons(i).该属性只能在程序中使用,在设计时不可用,3.2.4为应用程序设计简易菜单,(3)设置命令按钮

40、组中各按钮的属性在表单设计器中,既可以设置命令按钮组的属性,也可以设置其中各命令按钮的属性。有两种方法可对单个按钮的属性进行编辑。用鼠标选择命令组,右击选择【编辑】命令,单击命令组中任何一个按钮,然后右击鼠标选择【属性】命令。打开【属性】窗口,在其上部的对象下拉框中选择相应的按钮。,3.2.4为应用程序设计简易菜单,设置文本提示由于按钮组中的按钮用图片代替了标题,为使用户能够明了按钮的实际功用,可以设置工具提示文本,在每个按钮的ToolTilText属性中输入提示的内容。要想让表单运行时鼠标移到按钮时能显示出提示文本,还应将表单的ShowTips属性设置为.T.真。改动了标题栏中的按钮设置本例

41、中重新设置了表单的图标:Icon=d:学生管理系统图片view.ico;关闭了【最大化】和【最小化】按钮,同时也让【关闭】按钮不可用。一般在应用程序中,应注意单入口和单出口的设计,用户若想退出系统,必须使用按钮组中的退出按钮。6个按钮中的Click事件过程代码,与例3.3中的对应相同。请注意6个按钮的引用方式,它们是包含于CommandGroup1的。,3.2.4为应用程序设计简易菜单,例3.5考虑画面的美观,用图片代替按钮,设计一个图片式菜单表单。表单运行效果如下图所示。主要属性设置和事件过程代码见教材3.2.12。主要步骤和设计要点:(1)创建表单,保存于“主界面3”。(2)用剪贴画与艺术

42、字制作图片并保存为图片文件,将其添加于表单上创建图像控件的Picture属性里。,3.2.4为应用程序设计简易菜单,(3)在Image1Image6的Click事件中填写与例3.3中6个按钮Command1Command6中的Click事件代码相同。为明显它们的作用,设置鼠标指针的改变,让用户的鼠标掠过图片时变为小手状(如例3.1所述),单击后执行相关代码,从而起到菜单的作用。以上有关按钮式菜单的3个例题中,不论按钮外观怎样,实质上都是通过点击按钮完成相应功能的选择。通常按钮中的代码是运行下一级的表单,如点击“录入与编辑”按钮,调用“录入”表单,该表单提供了录入界面,用户可在该表单上完成录入操

43、作;又如,点击“查询”按钮,调用“查询”表单,该表单可能是下一级的一个菜单,供用户选择查询内容等等。就这样众多个相互间纵向调用和横向调用表单,构成了一个应用程序的用户界面。,3.2.4为应用程序设计简易菜单,2.页框式“页框”是一个容器类控件,它扩大了表单的容量。它可以包容多个页面,每个页面又可以容纳其他控件。所以,可以把不同表单完成的功能添加到一个表单的不同页面上。这种选项卡的方式本身就类似是一个菜单。,3.2.4为应用程序设计简易菜单,例3.6设计一个页框式菜单表单,保存于“主界面4”。运行效果如图所示。相关属性设置见教材表3.2.13。设计要点如下:(1)注意表3.2.13中各个控件间的

44、包含关系,理解容器控件的含义及其引用方式。(2)将前例中的前5个按钮改设为页面,设置页面1为表单运行时被激活的当前页。(3)“退出系统”按钮中的代码与前几例相同。提示:每次启动VisualFoxPro时,可在命令窗口输入以下命令改变默认路径,确定当前目录位置。SETDEFAULTTO,3.3上机指导,本节通过一个例题就制作一个功能较全面的表单进行上机指导。请读者注意创建步骤与设计思想。例3.7设计一个表单,具备开始表单、口令表单和简易菜单的功能。(1)创建表单Form1。使用菜单:选择【文件】|【新建】命令,选择【表单】类型,单击【新建文件】按钮,打开【表单设计器】。作为开始表单,想让它充满屏

45、幕,所以可能要调整表单的最大设计区。方法是:选择【工具】|【选项】命令,选择【表单】选项卡,在【最大设计器】的下拉列表中选择设置,如1024768。,3.3上机指导,(2)创建控件l标签Label1,用作表单的标题,也是系统的标题。l“进入系统”命令按钮Command1,单击它将显现输入口令的文本提示和文本框。l“退出”命令按钮Command2,当用户不想进入系统时,单击它释放表单。l计时器Timer1,用它来控制表单大标题的动画效果以及以上两个按钮的出现时机。l文件框Text1,用来让用户输入口令,当用户单击“进入系统”按钮后出现。l标签Label2,口令文本框的文本提示,当用户单击“进入系

46、统”按钮后出现。l命令按钮组CommandGroup1,起简易菜单作用,当用户口令正确时,以上两个命令按钮、口令文本框、口令文本框的文本提示等都不可见,命令按钮组出现。共有六个命令按钮,可供用户选择功能,进入下一步操作或退出系统。创建方法:单击【表单控件】工具栏上的相应控件的按钮,把它“画”在表单上的适当位置,见下面两张图所示。,3.3上机指导,3.3上机指导,(3)主要属性设置设置方法:选择控件,右击鼠标,选择【属性】命令。使用菜单选择【显示】|【属性】命令。以上两种方法都可打开【属性】对话框,进行属性设置。lForm1uCaption:学生管理系统uControlBox:.F.假uDesk

47、top:.T.真uPicture:d:学生管理系统图片主界面4背景.bmpuWindowState:2最大化lLabel1uAutoSize:.T.uBackStyle:0透明uCaption:学生管理系统uFontName:华文琥珀uFontSize:72uForeColor:255,0,0Top:12,3.3上机指导,lCommand1uCaption:进入系统uVisible:.F.假lCommand2uCaption:退出uVisible:.F.假lLabel2uAutoSize:.T.uBackStyle:0透明uCaption:请输入口令:uFontSize:14uForeColo

48、r:255,255,255lText1uFontSize:14uForeColor:0,0,0uPasswordChar:*uVisible:.F.假,3.3上机指导,lTimer1uIntervla:100lCommandGroup1uAutoSize:.F.uBackColor:0,128,192uBottonCount:6uValue:1uVisible:.F.假lCommandGroup1.Command1uAutoSize:.F.uCaption:录入lCommandGroup1.Command2uAutoSize:.F.uCaption:编辑,3.3上机指导,lCommandGro

49、up1.Command3uAutoSize:.F.uCaption:查询lCommandGroup1.Command4uAutoSize:.F.uCaption:打印lCommandGroup1.Command5uAutoSize:.F.uCaption:维护lCommandGroup1.Command6uAutoSize:.F.uCaption:退出系统,3.3上机指导,(4)代码编写方法:选择控件,双击鼠标,或使用菜单选择【显示】|【代码】命令,两种方法都可打开【文本编辑器】。在【过程】中选择相应的事件过程名,然后输入事件代码。Form1的Init事件publicaaaa=700&全局变量

50、,用于控件Label1的Top属性变化thisform.label1.top=700Command1的Click事件thisform.label2.visible=.t.&单击后,口令文本框和提示文本显现thisform.text1.visible=.t.thisform.text1.setfocus&口令文本框获得焦点Command2的Click事件thisform.release,3.3上机指导,lText1的LostFocus事件kl=allt(this.value)ifupper(kl)=ABC&用户输入口令“ABC”或“acb”显示命令按钮组mandgroup1.visible=.t.thisform.label2.visible=.f.&两个命令按钮和口令文本框等不可见this.visible=mand1.visible=mand2.visible=.f.else&若口令不对,用信息框提示错误messagebox(口令不对,不能进入系统!,16,提示)this.value=endif,3.3上机指导,lTimer1的Timer事件ifthisform.label1.

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论