首页 百科知识 应用程序设计

应用程序设计

时间:2022-10-21 百科知识 版权反馈
【摘要】:在一般的应用系统中,应用程序设计和数据库设计两方面的需求是相互制约的。他们所能见到并进行操作的只是应用程序所提供的用户界面。综上所述,面向对象程序设计也是一种以用户界面为核心来展开应用程序设计的方法。状态包括SET命令状态、窗口状态等。①仅.exe应用程序需要建立事件循环,在VFP开发环境中运行的应用程序则不必使用该命令。②必须在应用程序中用CLEAR EVENTS命令来结束事件循环,使VFP能执行READ EVENTS的后继命令。

12.1.3 应用程序设计

在一般的应用系统中,应用程序设计和数据库设计两方面的需求是相互制约的。具体地说,应用程序设计时将受到数据库当前结构的约束;而在设计数据库的时候,也必须考虑实现应用程序数据处理功能的需要。

面向对象程序设计以类和对象的设计为重点,它与结构化程序设计的不同之处见表12-1。

表12-1 结构化程序设计与面向对象程序设计主要步骤的比较

img385

下面简要说明VFP应用程序的设计步骤:

一、创建子类

面向对象的程序设计是通过对类、子类和对象的设计来实现的。在系统开发的过程中,难免会有很多重复需要使用的代码、控件和表单界面等,可以把这些东西创建成一个一个的子类,保存于系统的类库中。这样可以减少开发过程中的代码编写量,同时也可以保证整个系统界面的一致性。

二、用户界面设计与编码

Visual Fox Pro的用户界面主要包括表单集、表单、菜单和工具栏,它们所包含的控件与菜单命令应能实现程序的所有功能,即用户界面应直接表现应用程序系统的功能。事实上,在面向对象程序设计中,不论应用程序的代码如何简洁,算法如何巧妙,对所有用户来说都是不可见的。他们所能见到并进行操作的只是应用程序所提供的用户界面。因此,用户对所开发的应用系统是否满意,很大程度上取决于系统界面的功能是否完善。

综上所述,面向对象程序设计也是一种以用户界面为核心来展开应用程序设计的方法。VFP系统提供了丰富的设计工具,可以支持用户创建各种界面美观和功能完善的应用程序,其界面设计与编码可包括以下内容:

(1)根据应用系统设计的需要,用户在系统提供基类的基础上定义一些必要的子类。

(2)创建对象,包括表单集、表单、单文档界面、菜单、工具栏,以及各种控件。

(3)给上述对象设置属性。

(4)编写对象的事件过程代码。

(5)为方法程序添加代码。

(6)用户定义对象的新属性。

(7)用户定义新的方法程序。

三、数据输出设计

数据输出可包括查询、报表、标签和通过ActiveX控件来共享其他应用程序的信息。

查询设计包括浏览查询和组合查询等形式,组合查询允许输入含有多个条件的逻辑表达式,使用户能够很好地控制数据。

报表和标签的设计要考虑使用户可以选择预览和打印,还可以选择全部打印、部分打印或概要打印。

四、数据库的维护功能

数据库应用系统的功能中应该包括数据库维护,即应具有对表中的数据进行添加、删除和修改的功能。

另外,数据库中数据的安全性也是必须考虑的问题。

五、构造Visual FoxPro应用程序

应用程序的主文件就是主控程序,作为应用程序执行的起始点,由此启动程序的逐级调用;在项目管理器中,主文件也可作为应用程序“连编”的起始点。可以是.PRG文件、菜单程序(.MPR)或表单文件(.SCX)。主文件的作用有4个:

(1)初始化环境

应用程序环境初始化包括以下几个方面:

①设置状态

每个应用系统由各自的特点和要求,VFP默认的开发环境可能不是应用程序的最佳环境,这就需要在应用程序的主程序中对它们重新设置。通常还要把重新设置的环境保存起来,以便退出应用系统时将其恢复为原来的设置。

状态包括SET命令状态、窗口状态等。例如要将SET TALK命令置为OFF,启动程序中可包含如下代码:

img386

用来保存SET状态的变量可设置为公用变量,使之在要恢复SET状态时仍可用。若要恢复保存SET的状态,可在命令中使用宏替换函数,例如SET TALK &CTalk。

②初始化变量,例如建立公共变量。

③建立应用程序的默认路径,通过SET DEFAULT TO命令实现。

④打开需要的数据库、表及索引

(2)显示初始的用户界面。

初始用户界面可以是菜单或表单。在初始用户界面之前还可以显示应用系统封面或注册对话框。

若.PRG为主文件,可在其中使用DO命令运行一个菜单程序,或者使用DO FORM命令运行一个表单来显示初始的用户界面。

(3)控制事件循环

用READ EVENTS命令开始事件循环,等待用户操作。在使用该命令时应注意两点:

①仅.exe应用程序需要建立事件循环,在VFP开发环境中运行的应用程序则不必使用该命令。该命令一般出现在主文件中,在主菜单或主表单调用之后使用该命令。例如:

img387

又如:

img388

若不设置此命令,菜单程序在开发环境中能正确运行,但在Windows环境中独立运行时,程序刚启动就会终止;运行Windows Type属性为0(无模式)的表单时也会出现类似的情况,除非将该属性设置为1(模式)。

②必须在应用程序中用CLEAR EVENTS命令来结束事件循环,使VFP能执行READ EVENTS的后继命令。CLEAR EVENTS命令可用作某菜单项的单条命令代码,或设置在表单的“退出”按钮中。

(4)恢复原来的系统环境

退出应用程序时,应该恢复系统到应用程序运行之前的环境。

综上所述,一个简单的主文件可以如下所示:

img389

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

我要反馈