VisualFoxPro程序设计案例教程 第5章 建立用户使用界面.ppt
《VisualFoxPro程序设计案例教程 第5章 建立用户使用界面.ppt》由会员分享,可在线阅读,更多相关《VisualFoxPro程序设计案例教程 第5章 建立用户使用界面.ppt(117页珍藏版)》请在三一文库上搜索。
1、第5章 建立用户使用界面,第一章,本章目的 简单了解有关面向对象编程的特点和基础知识 掌握程序设计的基本概念和常用命令 掌握窗体的运行和关闭 熟悉窗体的常用事件 掌握窗体中的控件属性及代码编写 本章任务 任务一:录入超市管理系统数据 任务二:设计用户主界面 任务三:程序设计初步 任务四:用户登录 任务五:退出窗口 任务六:商品信息浏览 任务七:表单的综合应用,5.1 基础知识,面向对象的程序设计(OOP) (Object-Oriented Programming,OOP)立意于创建软件重用代码,具备更好地模拟现实世界环境的能力,这使它被公认为是自上而下编程的优胜者。 面向对象的编程语言使复杂的
2、工作条理清晰,编写容易,它是一场编程技术方面的革命。 Visual FoxPro是一种混合型语言,可以使用面向对象编程,也可以使用传统的过程化编程。,5.1.1 抽象在面向对象中的作用,1抽象的概念 一般来讲,抽象是通过从特定的实例中抽取共同的性质以形成一般化的概念的过程。抽象是对某个系统的简化的描述,即强调该系统中的某些特征,而忽略一部分细节。简单地说,抽象是人们在理解复杂现象和求解复杂问题中处理复杂事物的主要工具。 2面向对象抽象的实现 面向对象的原理有4个,分别是数据抽象、行为共享、进化和确定性。 (1)数据抽象:它为程序员提供了一种对数据和为操作这些数据所需要的算法的抽象。 数据抽象包
3、含两个概念:模块化和信息隐藏。模块化的优点是便于修改或维护,系统发现问题后,可以确定问题出在哪个模块上。在支持信息隐藏的系统中,错误的影响也通常被限制在一个模块内,增强了系统的可靠性。 (2)行为共享:行为是数据抽象引进的概念,行为是由实体的外部接口进行定义的。行为共享是指许多实体具有相同的接口,这将增加系统的灵活性。 (3)进化:进化是考虑到实际中的需求会很快发生变化。面向对象的方法要支持进化过程就是要适应可能发生的不断变化。 (4)确定性:这里确定性是指用于描述一个系统确定的行为。一个确定的系统应该确保其中每个行为项都有一个确切的解释,系统不会因不能响应某一行为而失败。,5.1.2 面向对
4、象的基本特征,面向对象的系统包含3个要素:对象、类和继承。 1对象 在不同领域中对对象有不同的理解。一般认为,对象就是一种事物,一个实体。 从概念上讲,对象是代表正在创建的系统中的一个实体。例如,一个商品销售系统,像顾客、商品、柜台、厂家等都是对象。 从实现形式上讲,对象是一个状态和操作(方法)的封装体。状态是由对象的数据结构的内容和值定义的,方法是一系列的实现步骤,它是由若干操作构成的。 2类 类是创建对象的样板,它包含着所创建对象的状态描述和方法的定义。一个类的所有对象都有相同的数据结构,并且共享相同的实现操作的代码,而各个对象有着各自不同的状态。类是所有对象的共同行为和不同状态的集合体。
5、 3继承 继承提供了创建新类的一种方法,这种方法就是一个新类可以通过对已有的类进行修改或扩充来满足新类的需求。新类共享已有类的行为,而自己还具有修改或额外添加的行为。 从一个类继承定义的新类,将继承已有类的所有方法和属性,并且可以添加所需要的新的方法和属性。新类被称为已有类的子类,而已有类称为父类,又叫基类。新类又叫派生类。,5.2 任务一 录入超市管理系统数据,5.2.1 相关知识 数据库的对话框在Visual FoxPro中称为“窗体”,一般还称为表单。窗体也是Visual FoxPro 中的一种对象,它使用计算机屏幕将数据库中的表或查询中的数据显示出来。由于数据库软件是给用户使用的,所以
6、要为使用的用户提供一个友好的使用界面。这是建立一个窗体的基本目标。 一个设计优秀的窗体是非常必要的。不管数据库中表或查询设计得有多好,如果窗体设计得十分杂乱,而且没有任何提示,就会令使用者感觉到迷惑,甚至增加失误的概率。这样的窗体就不利于数据库软件的应用和推广。 本任务将介绍如何使用Visual FoxPro编写一个简单的程序。在此之前先介绍Visual FoxPro的各个部分的功能,包括工具箱、项目管理器、“属性”窗体设计器等,下面分别介绍这几部分的功能。,1工具箱,当建立一个新的表单时,或者打开表单设计器时,一般会默认显示工具箱,上面提供了Visual FoxPro 表单中常用的各个控件。
7、选中控件,然后在窗体设计器中拖动鼠标,即可在其中绘制控件。初始状态的工具箱只有一个“常用”选项卡,在工具箱上右击,在弹出的快捷菜单中选择“添加选项卡”命令,可以为工具箱添加选项卡;右击,选择相关选项,可以打开其他选项卡。,常用表单控件名称,2项目管理器,项目是Visual FoxPro的组织应用程序的方式,一般而言,一个工程包含开发一个应用程序所需要的所有文件,包括窗体文件、程序文件、数据库文件、表文件、报表文件、菜单文件、索引文件等。,5.2.2 任务实现,本小节主要技能点如下: (1)创建最基本表单。 (2)用表单向导创建表单。 (3)一对多表单向导,1创建最基本的表单,在的“项目管理器”
8、中,选择“文档”选项卡,选择下面列表框中的“表单”选项,在右侧操作区单击“新建”按钮。 在“新建表单”对话框中单击“新建表单”按钮。,选择“文件”菜单中的“保存”命令,选择相关的文件夹并输入正确的表单名即完成第一个表单的制作,如图所示。,选择要保存表单的位置,也可以重新命名该表单,然后单击“保存”按钮,该表单就会出现在当前项目中,如图所示。关闭设计器,选择第一个表单,在右侧的功能区单击“运行”按钮。,表单运行结果如图5-9所示。,单击Form1右上角的关闭按钮,可以关闭Form1。再次选择第一个表单,单击“修改”按钮,可以对Form1(第一个表单)进行修改。,选择菜单中的“显示”“表单控件工具
9、栏”命令,可以控制表单控件工具栏的显示。,单击工具栏中的按钮,并在第一个表单(Form1)上再次单击,则会在Form1中创建一个新的按钮。,双击Command1按钮,会出现该按钮的代码编辑器,在Command1的click事件中输入thisform.release,即运行表单后,单击此按钮就会退出表单。关闭表单设计器,运行表单,测试按钮Command1的效果。,2用表单向导创建简单表单,(1)在“项目”菜单中,选择“新建”“表单向导”命令,出现如图所示的界面。,(2)选择“表单向导”选项,单击“确定”按钮。 (3)选择一个数据表,然后为该表建立一个表单,这里选择的是“用户”表,单击按钮可以把“
10、用户”表的所有字段全部选中,单击按钮可以选取单个字段。单击“下一步”按钮。,(4)如图5-15所示,在该对话框中选择一个自己喜欢的样式,使表单更加美观,单击“下一步”按钮继续。,(5)该对话框主要是对“用户”表的数据进行排序的设置,这里选择“用户编号”作为索引,单击“添加”按钮,再单击“下一步”按钮,(6)根据该对话框的提示,可以单击“预览”,观看一下效果,也可以直接单击“完成”按钮,完成表单的制作,(7)单击“预览”按钮,效果如图5-18所示,返回向导,单击“完成”按钮,将表单命名为“用户”,选择一个存放表单的位置,如D:superMarket,3一对多表单向导,选择“项目”菜单中的“新建”
11、命令,选择“一对多表单向导” 单击“确定”按钮,效果如图5-20所示。 选择“供货商”表,然后将字段导入到“选定字段”列表框中。单击“下一步”按钮,图519 选择“一对多表单向导”选项,图520 父表选择,从子表中选择字段(这里选择“商品信息”表,导出所有字段,单击“下一步”按钮。 ),如图5-22所示,是建立两个表单的关系,以便联动显示。单击“下一步”按钮。,图522 建立表间关系,如图5-23所示,在“样式”列表框中选择自己喜欢的样式,这里选择“阴影式”,单击“下一步”按钮。,图523 选择表单样式,图5-24是选择排序次序的字段,这里选择“供货商编号”,单击“下一步”按钮,图524 数据
12、排序方式,单击“完成”按钮,保存为“供货渠道”,图525 完成及相关选项,单击“完成”按钮,保存为“供货渠道”,运行表单,课后练习,1利用向导制作一个“入库记录”的表单,并用表单设计器修改和美化产生的表单,利用此表单浏览库存商品信息,并通过此表单输入相关的记录。,课后练习,2利用向导分别制作以下几个数据表的表单,如“供货商”表、“会员”表、“交易”表、“商品信息”表、“生产商”表、“销售”表、“用户”表,并通过表单为相关的数据表添加数据和修改数据。,5.3 任务二 设计用户主界面,设计用户主界面,并为主界面各项按钮指定代码,用以访问相关表单。,5.3.1 相关知识点,1容器和控件 2标签控件
13、3“属性”窗口 4和字体有关的属性 5命令按钮控件 6和鼠标操作相关的常用事件 7设置访问键 8设置控件的Tab键次序 9设置工具提示文本 10.启用和废止控件 11.定义表单行为 12指定表单的图标,1容器和控件,Visual FoxPro 6.0的基类共分成两个大类:容器类和非容器类。一般称容器类基类为容器,而把非容器类基类称为控件,有时也把所有基类都称为控件。,(1)容器类。容器类可以包含其他对象,并且允许访问这些对象。,(2)控件类。控件类的封装比容器类更为严密,但也因此丧失了一些灵活性。,(3)容器中各对象的调用。在进行容器类“子类”或“对象”的设计时,往往要调用容器中某一特定对象,
14、这就要掌握OOP方法中对象的标识方法。 例如,在图5-12所示的代码编辑器中输入。mand1.caption=“点击事件“,并删除thisform.release。运行表单,单击按钮,可以看到最后的效果。其中thisform是command1的父容器,command1是其中的一个控件,caption是command1的属性。文字“点击事件”是这个属性的值。 注:thisform在Visual FoxPro中用来代表当前的表单。,2标签控件,在设计表单界面时,几乎都要有一些提示某个控件的作用的文字,比如在注册时,就有用户名、密码等文字在某些表单控件之前进行显示,提示用户某控件可以做什么,如果不知
15、道,用户就会不了解这个界面,注册也就无从下手,这就是标签的作用。,标签,3“属性”窗口,“属性”窗口用于修改窗体和控件的属性,如图5-30所示,其中上方的下拉列表框中列出当前的窗体及其控件的名称,可以通过下拉列表来选择窗体或某一个控件。在窗体设计器中选择某一个对象之后,“属性”窗口也会显示该对象的属性。,图5-30 表单“属性”窗口,在属性列表中,caption属性最为常用,用于显示文本。而为了编程方便些,还要修改name属性,即在代码中引用对象时所用的名称。,在设计表单时,为了让界面更友好、更美观,通常都要对界面进行一定的美化,其中很重要的一项就是对字体属性的设置,常用的控件如标签和按钮等都
16、会有字体属性,可以在“属性”窗口中进行设置,图5-31所示为与字体有关的属性。,4和字体有关的属性,图5-31 和字体有关的属性,FontBold、FontItalic、FontStrikethru、Fontunderline属性:指定文本是否具有粗体、斜体、删除线或下划线等效果。 FontExtend的作用是指定文本是否可扩展。 FontName属性:指定显示文本的字体名,默认值为 Arial FontSize属性:默认的设置是 9 磅 FontOutline属性:作用是指定与控件相关联的文字是否显示为空心字 FontShadow属性:作用是指定与控件相关联的文字是否带有阴影 FontSiz
17、e属性:指定对象文本的字体大小,以磅为单位,默认值为10磅 ForeColor属性:指定用于显示对象中文本前景色,5命令按钮控件,命令按钮通常用来启动一个事件,如关闭一个表单、移动到不同记录、打印报表等动作。 可使用Caption属性指定在命令按钮上显示的文本。 命令按钮常用的事件是Click事件,当编辑代码时,可以选择执行的事件,如图5-33所示。,图5-33 命令按钮事件选择,(1)Click:当在程序中包含触发此事件的代码,或者将鼠标指针放在一个控件上按下并释放鼠标左键,或者更改特定控件的值,或在表单空白区单击时,此事件发生。 Click 事件发生在用户: 单击复选框、命令按钮、列表框或
18、选项按钮控件时。 使用箭头键或按鼠标键在下拉列表框或列表框中选择一项时。 在命令按钮、选项按钮或复选框有焦点时按SPACEBAR键时。 表单中有 Default 属性设置为“真”(.T.) 的命令按钮并且按回车键时。 按一个控件的访问键。例如,若一个命令按钮的标题为“Go”,则按ALT+G组合键可触发Click事件。 单击表单空白区。当指针位于标题栏、控制菜单框或窗口边界上时,不发生表单的 Click 事件。 单击微调控件的文本输入区。 单击废止的控件时,废止控件所在的表单发生Click事件。,6和鼠标操作相关的常用事件,(2)DblClick:当连续两次快速按下鼠标左键(主键)并释放时,此事
19、件发生。 当从列表框或组合框中选择一个选项并按回车键时,也发生 DblClick 事件。如果在系统指定的双击时间间隔内不发生 DblClick 事件,对象认为这种操作是一个 Click 事件。因此,当向这些相关事件中添加过程时,必须确认这些事件不冲突。另外,不响应 DblClick 事件的控件可能会将一个双击事件确认为两个单击事件。,6和鼠标操作相关的常用事件,7设置访问键,代表访问键的字符在菜单上或对话框中加有下划线或突出显示。同时按下 Alt 键和访问键可以激活菜单或对话框。有时用来指代热键。 设置访问键的方式是在设置Caption属性时,在访问键的相关字母前加/Close则显示的结果为C
20、lose,设置的访问键为Alt+C。,8设置控件的Tab键次序,按键盘上的Tab键时,焦点从一个字段或对象移向另一个字段或对象的次序。对表单中的控件来说,按照控件添加的次序指定Tab键次序,每个新建控件都位于Tab键次序的末尾。一个良好的Tab键次序,对于用户的使用以及提高用户的工作效率是至关重要的。可以通过“属性”窗口来调整个别控件的Tab键值也可以通过菜单“显示”“Tab键次序”命令来依次指定。,9设置工具提示文本,ToolTipText:指定控件工具的提示文本。当在运行状态时,鼠标悬停在相关控件上方,系统会给出相关的提示。,10启用和废止控件,在某给定情况下,如果禁止使用某个控件,可以将
21、该控件的Enabled属性设置为“假”(.F.)。 将每个按钮的Enabled属性设置为“真”(.T.)或“假”(.F.),可以启用或废止组中单个选项按钮或命令按钮;也可通过设置组的Enabled属性来启用或废止组中的全部按钮。 如下面一行代码所示: Tmand1.Enabled = .F. 当控件的Enabled属性设置为“假”(.F.)时,控件的所有事件都将废止,但会显示出禁用的前景色和背景色。,11.定义表单属性,表5-3 表单行为属性(一),11.定义表单属性,表5-3 表单行为属性(二),12指定表单的图标,在Visual FoxPro for Windows 中,可指定表单的图标;
22、当该表单在 Windows NT 窗口中最小化或位于 Windows 95 的标题栏上时显示为这个图标。如果要指定表单的图标,将表单的 Icon 属性设置为一个 .ico 文件的文件名。 若要指定表单的图标,打开表单,再打开“属性”窗口,将 Icon 属性设置为希望显示的 .ico 文件。,5.3.2 任务实现,(1)效果如图5-34所示,添加按钮和图片,设置按钮的名称。 各按钮的Click事件的代码分别如下: “采购商品”按钮Click事件:do form “商品信息“ “生产商”按钮Click事件:do form“生产商“ “供货商”按钮Click事件:do form “供货商“ “会员注
23、册”按钮Click事件:do form “会员注册“ “用户注册”按钮Click事件:do form “用户注册“ “采购商信息”按钮Click事件:report form 采购商信息报表 preview “生产商信息”按钮Click事件:report form 生产商信息报表 preview,5.4 任务三 利用程序浏览数据,5.4.1 相关知识,1程序设计的基本概念 程序设计(Programming)是指设计、编制、调试程序的方法和过程(程序设计=数据结构+算法)。它是目标明确的智力活动。由于程序是软件的本体,软件的质量主要通过程序的质量来体现,在软件研究中,程序设计的工作非常重要,内容涉
24、及有关的基本概念、工具、方法及方法学等。 按照结构性质,有结构化程序设计与非结构化程序设计之分。前者是指具有结构性的程序设计方法与过程。它具有由基本结构构成复杂结构的层次性;后者反之。按照用户的要求,有过程式程序设计与非过程式程序设计之分。,2程序设计的过程 软件设计思路和方法的一般过程,包括设计软件的功能和实现的算法及方法、软件的总体结构设计和模块设计、编程和调试、程序联调和测试以及编写、提交程序。 (1)系统分析员通过和用户的沟通初步了解需求,列出系统的主要功能模块,每个主要功能模块可能会有哪些小功能模块,对于有些需求比较明确相关的界面时,在这一步里可以初步定义好少量的界面。 (2)系统分
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VisualFoxPro程序设计案例教程 第5章 建立用户使用界面 VisualFoxPro 程序设计 案例 教程 建立 用户 使用 界面
链接地址:https://www.31doc.com/p-2274703.html