第8章 表单的设计课件.pptVIP

  • 1
  • 0
  • 约1.41万字
  • 约 56页
  • 2017-08-25 发布于广东
  • 举报
第8章 表单的设计 主编:赖申江 本章学习导航 表单是应用软件运行时的窗口,也是人机交互的工作界面。在面向对象的程序设计中,表单设计主要包括两方面的内容:一是掌握表单的常用属性、事件及方法,二是熟练应用Visual FoxPro为表单设计而提供的各种设计器、生成器及工具。而上述两方面的内容也正是本章的教学重点。为了加深理解,本章还介绍了两个完整的案例。 本章学习要点 第8章 表单的设计 8.1 表单设计概述 8.1.1面向对象的程序设计 面向对象的程序设计又称为可视化编程,它的设计方法完全不同于传统的结构化程序设计。 结构化程序设计自20世纪70年代提出以来,在应用软件的开发中得到了极为广泛的应用。它提出了自顶向下、模块化的程序设计原则。通过系统分析,用模块分割方法最终将程序的结构分为顺序、选择和循环三种基本结构。结构化程序设计容易把一个复杂的程序分成若干个较小的过程,每个过程都可单独进行调试。这类设计方法的总的思路是从程序员角度考虑使程序设计更简单,而较少从用户角度考虑。使用这类设计方法设计的程序流程完全由程序员控制,用户只能做由程序员预先安排好的事情。 面向对象程序设计(OOP,Object-Oriented Programming)是将数据结构和程序作为一个实体,统一设计它的属性和行为。这类程序设计的思想是面向对象,即设计的主要任务在于描述对象。在程序设计时,主要考虑建立哪种对象,并针对某一具体对象编写事件代码来实现一定功能。 面向对象的应用软件在运行过程中,程序等待的是一个发生在对象上的事件并由事件驱动,而发生什么事件则要看用户的操作。例如用鼠标单击、双击对象是事件,对象的初始化也是一个事件。响应某个事件后所执行的程序命令就是事件过程。应用软件运行过程中,面对用户不同的功能操作,一个对象可能产生多个事件,因此它可以拥有多个事件过程。 第8章 表单的设计 面向对象程序设计使程序设计的任务变得更为简单、方便、灵活。下面先介绍相关的基本概念。 1.对象的属性、事件及方法 1)对象和类 对象(Object)和类(Class)是面向对象程序设计方法的两个基本概念。 客观世界里的任何实体都可以被看作是对象。对象可以是具体的物,也可以是某些概念。例如,一名学生可以被看作是对象,一个命令按钮也可以被看作是对象。 类和对象的关系密切,但并不相同。类是对一类相似对象的性质描述,这些对象具有相同的性质:相同种类的属性及方法。类好比是一类对象的模板,有了类定义后,基于类就可以生成这类对象中任何一个对象。通常,将基于类生成的对象称为这个类的一个实例。 第8章 表单的设计 2)属性 属性(Proprty)是指对象的一项描述内容,用来描述对象的一个特征。不同的对象有不同的属性,而每个对象又可以由若干个属性来描述。在面向对象程序设计中,通过对不同的对象设置不同的属性来控制对象的外观和操作。 以命令按钮为例,它的常用属性有标题(Caption)、名称(Name)、字体大小(FontSize)、是否可见(Visible)等。 第8章 表单的设计 3)事件 事件(Event)是指由系统预先定义、能够被对象识别的动作。例如,单击(Click)事件、双击(DblClick)事件、装入(Load)事件、移动鼠标(MouseMove)事件等,不同的对象能识别的事件不全相同。对象的事件是固定的,用户不能建立新的事件。Visual FoxPro提供了丰富的内部事件,这些事件能满足Windows中绝大部分的操作需要。 事件的来源有三种: (1)用户:如命令按钮的单击事件。 (2)程序:如表单的初始化(Init)事件。 (3)系统:如定时器的定时(Timer)事件。 当事件由用户或系统触发时,对象就会对该事件作出响应。响应某一个事件后所执行的程序代码就是事件过程。所以,事件过程是为处理特定事件而编写的一段程序。一个对象可以识别一个或多个事件,因此,可以使用一个或多个事件过程对用户或系统的事件作出响应。此外,事件过程也可以象方法一样被调用,从而使得程序的开发更加灵活有效。 在程序设计中,通常对于必须响应的事件需要编写事件过程,而不必理会的事件则不需要编写事件过程,只要交给Visual FoxPro的默认处理程序即可。例如,命令按钮的单击事件是最重要的必须处理的事件,而双击事件则要视系统的功能需求而定。 第8章 表单的设计 4)方法 方法(Method)是系统为对象预设的通用过程和函数,使对象能执行一个动作。Visual FoxPro已将一些通用的过程和函数编写好并封装起来,作为方法供用户直接调用。 虽然方法与事件都称为过程,但事件过程是系统给定的,用户不能建立新事件,而方法过程可以根据用户需要由用户自己建立。另外,事件过程是由对象的动作事件触发

文档评论(0)

1亿VIP精品文档

相关文档