计算机基础vfp第910章表单设计及应用_第1页
计算机基础vfp第910章表单设计及应用_第2页
计算机基础vfp第910章表单设计及应用_第3页
计算机基础vfp第910章表单设计及应用_第4页
计算机基础vfp第910章表单设计及应用_第5页
已阅读5页,还剩56页未读 继续免费阅读

下载本文档

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

文档简介

1、第八章 表单设计及应用 一、本章主要内容 : 1、面向对象的概念及相关术语 2、规范表单的创建方法 3、常用表单控件及使用二、教学要求1、掌握VF提供的编程功能及可视化工具;2、熟练使用面向对象的编程技术及事件驱 动编程技术提高应用程序的开发效率。(一) 对象与子类 本节涉及到以下几个概念:对象、属性、类、基类、子类、对象特征(封装、继承、多态)。 1、对象 在面向对象的程序设计中,现实世界的事物均可抽象为对象。如:人、电脑、表单、控件等。 一、面向对象的概念(P169-173)2、对象的三大特征 封装性:封装性就是将信息隐藏,将对象的方法程序和属性代码包装在一起,外界无法看到。继承性:继承是

2、自动在类与子类间共享功能与数据的一种特性,而且一旦类做了某一项改变,子类会自动改变,即子类会继承父类所有的特性与行为模式。多态性:多态性实际上就是在运行时方法和对象的动态绑定。3、属性 对象的状态和特点统称为属性,用户通过控件对象的属性来操作对象。如:人的性别、年龄;电脑的开机、关机;表单的背景色、标题等。 4、类 类是一种对象的归纳和抽象,对象的属性、事件和方法,都是在类定义中确定的,所有对象均由类来产生。如:电视机是一个类,它具有大小、颜色等属性,具有发声、图像等行为功能。 5、基类 基类是VF系统预先定义的类,在表单控件工具栏中,每个控件按钮都代表一个基类,它分为容器类和控件类。6、子类

3、用户按需要基于基类所创建的新类称子类,前者叫父类 (一) VF基类 基类是VF系统内部定义的标准类,它处于所有用户自定义类的最上层,它可以派生多个用户自定义类。它又分为容器类和控件类。 二、VF基类简介、容器:是包含其它相似类的vf基类,它可以容纳别的对 象,由容器类创建的对象称为容器对象或容器。、控件:控件类是可以包含在容器类中的,并由用户派生 的vf基类,它不能容纳其它对象,由控件类创建 的对象称为控件类对象或控件。3、对象的引用:(面向对象程序设计的语法规则)绝对引用: 格式:对象名1.对象名2例:表单:myform,命令按钮command1,则命令按钮的绝对引用形式: mand1相对引

4、用:This 该对象本身 Thisform 该对象本身所在表单 Parent 该对象本身的直接容器命令按钮引用: mand1相对引用的层次关系一个可能的容器嵌套表单集表 单控件表格列控件组按钮1按钮24、属性的引用格式:对象名.属性名=值 例: mand1.Caption=”确定” 绝对 mand1.Height=30 相对 注:既可在属性窗口,又可在程序中设置属性5、程序中成批修改一个对象的属性值:with 对象名 属性名1值1 属性名2值2 endwithwith thisform.label caption=Hello,World! fontsize=24 visible=.f. end

5、with例:对象的包容层次 在对象的嵌套层次关系中,要引用其中的某个对象,要需要指明对象在嵌套层次中的位置,这时要经常用到以下属性:parent、this、thisform、thisformset。思考: mand1.caption=“确定”的含义是什么?(二)表单属性、事件和方法 1、表单的常用对象:教材P172表8-1和表8-2 2、表单的常用事件:教材P173表8-3 3、表单的常用属性:教材174表8-4(一) 创建表单 创建表单有以下方法: 1、表单向导(格式单一的规范表单) 2、表单设计器(按用户需求创建灵活表单) 3、表单生成器(创建快速表单) 4、命令(进入表单设计器的一种方法

6、)三、表单设计使用表单设计器创建表单一般需要进行的工作如下:见教材P181-185规结步骤如下:四、表单设计器创建一个新表单。在表单中添加与此相关的控件。为表单及其控件设置好与之匹配的数据环境及数据源。为表单中的每一个控件做恰当的属性设置。选择与对象、目标相关的事件。设计好事件触发的方法程序代码。 、表单设计器窗口 2、属性窗口 启动:“显示”属性组成:对象列表框、选项卡、属性设置框、属性列表 框、属性说明框。(一)表单设计器环境3、数据环境启动:“显示”数据环境作用:设置当前表单所需表、视图及关系。 4、表单控件工具栏启动:“显示”表单控件工具栏作用:在表单中添加控件 5. 表单的运行 命令

7、法:do form 表单 菜单法:“程序”运行(类型:表单) 工具按钮:! 一、 标签控件 标签主要用于显示一段固定的文本信息字符串,它没有数据源,把要显示的字符串直接赋予标签的标题(caption)属性即可。 标签对象的常用属性有: 标签标题:caption 标签字体:fontname 字体大小:fontsize 字体色:fontcolor 自动调整标签与字的大小:autosize五、表单控件的使用(P185)例1:设计如右图所示的 初始界面。演示中所涉主要属性:caption、autocenter、fontname、fontsize、 autosize等。 二、 文本框控件 文本框是最常用

8、的控件。主要用于数据表中某些数据的输入输出或编辑,以及从窗口给内存变量赋值等操作。 文本框对象的常用属性有:value、controlsource、passwordchar等。 例2:设计表单: form1:captionlabel1label3: caption、fontsizetext1:controlsourcetext2: passwordchar例10-4:设计如下所示的表单。 主要属性:思考:在表单中能上下查看不同记录的学号和姓名,应如何操作? form1:captionlabel1label3:caption、fontsizetext1text2:controlsource三、命

9、令按钮控件“命令按钮”控件主要用来控制程序代码的执行、操作。在表单中添加具有不同功能的命令按钮,供用户选择各种不同的操作。命令按钮的不同功能是通过为各个按钮“click”事件,编写不同的方法程序代码设置完成的。命令按钮的主要属性:caption、enabled、visible等。命令按钮经常选用的事件:click例1:设计如下所示的系统登录表单分析:表单初始界面:3个标签、2个文本框、2个命令按钮。属性:form1:caption label1-label3:caption、fontsize text2: passwordchar mand2:caption、fontsizeClick代码:取

10、消:thisform.release 确定:if thisform.text1.value=李春昆 ; and thisform.text2.value=123456 thisform.label4.caption=欢迎使用! else thisform.text2.value= thisform.text2.setfocus thisform.label4.caption=密码错,请重新输入!endif 例2(补充):设计如下所示的表单。分析:1. 添加控件及布局2. 属性:caption、fontsize 3. 事件:click (val函数、setfocus、refresh及releas

11、e )思考:设计具有命令按钮的学生信息表单。四、命令组控件 命令按钮组是把一些命令按钮组合在一起,作为一个控件管理,每个按钮有自己的属性、事件和方法,使用时需要独立地操作每一个指定的命令按钮。常用属性:ButtonCount、Caption、Value、Enabled例6(补充):显示标签的字体。例6:显示标签的字体。分析:该题重点在click事件代码的书写。常见的有两种方法,即commandgroup的click事件及三个按钮的分别click事件。控件的主要属性是命令按钮数:buttoncount、caption、fontname思考:设计一个如下所示的表单。五、编辑框、列表框和组合框 编辑

12、框中允许用户编辑长字段或备注字段,其属性与文本框 相同。 列表框用于显示供用户选择的列表项,它允许用户选择一个或多个数据项。 组合框兼有编辑框和列表框的功能,用于从列表框中选取数据供显示,但它不具有多重选择功能。 属性: 编辑框(edit):value、controlsource 列表框(list):P198-199, value、rowsourcetype、 rowsource、 list、listindex 组合框(combo):与列表框同。对初学者来说,一般采用生成器完成更为方便。 例1:设计如下所示编辑框表单 注意:controlsource属 性的使用。例2:创建如下包含有列表框的表

13、单,从列表框中选择内容时,显示在文本框中.分析:1. 添加text和list框控件。2. 用生成器设置list属性。 3. 书写list的interactivechange(或者clice)事件代码: thisform.text1.value =thisform.list1.value例3:创建如下包含有组合框的表单.分析:1. 添加控件。2. 在form的init中设置两全局数组。 3. 用生成器设置combo的数据来源为数组。 4. 书写interactivechange事 件代码。Thisform.label1.fontname=this.fn(this.listindex) 复选框的主

14、要属性有caption、value、controlsource。例:设计如下表单。分析:1. 添加控件。2. 编写三个click事件代码:fontname、forecolor、fontunderline。六、复选框和单选按钮 例2:设计如下表单。分析:1. 添加控件。2. 编写click事件代码。 3.select查询语句简介。 选项按钮组也叫“单选按钮”,常用于从多项控制中选择其 一,把事先设计好具有特定目的的整套操作过程提供 给“选项按钮组”,用户可以从中选择一项。“选项按钮 组”控件的属性主要是“单选按钮”的个数、值及数据源。 单选按钮个数:buttoncount 标题、值分别为:cap

15、tion、value 数据源:controlsource例1:创建如下所示的表单(选讲)。分析:1.界面控件设置:2.属性设置:3.代码书写:例2:创建如下所示的表单。分析:1.界面控件设置:2.属性设置:生成器在文本框 和选项按钮组中的使用。3.代码书写: 微调按钮是用于接收给定范围内的数值输入。一方面可能代替键盘输入接受数值,另一方面可以有当前值的基础上作微小的增量或减量调节。其主要属性有:微调量increment、最大值spinnerhighvalue、最小值spinnerlowvalue。七、微调按钮 例:设计如下所示表单:分析:1.列表框与微调按钮可通过 生成器完成。2.列表框与微调

16、按钮的关系 通过interactivechange完成。2.在click代码中通过repl语句完 成表中工资数据的调整。 计时器是利用系统时钟来控制某些具有规律性的周期任务的定时操作。它在表单运行时是不可见的。其主要属性有:计时器开关enabeld、触发的时间间隔interval。八、计时器控件 例:设计表单要求:1)标题由小变大,红黑交替.2)电话号码向右移动. 例:设计表单Label1的caption初值为空;timer事件代码:label1.caption=“time()” 表格是将数据以表格形式表示出来的一种容器控件。主要用于创建一对多表单,用文本框、列表框、组合框等显示父记录,用表格

17、显示子记录,当用户浏览父表中记录时,表格显示与之对应的子记录。表格是一类复杂控件,主要通过生成器来创建。但要注意事件代码中select查询的使用。表格使用时最主要属性有:表格数据源类型 recordsourcetype表格数据源 recordsource九、表格控件例1:设计一个如下所示的表单。题意: 通过combo1中姓名的不同,在grid1中列出其成绩信息。分析:在数据环境中建立主次表关系即可。例2:设计一个如下所示的两表控件表单。分析:直接用生成器生成控件,并在选课表格中设置与父表关系即可.例2:设计一个如下所示的表单。三表关系:(输入姓名值)Text1的lostfocus代码主要包括:

18、Recordsourcetype=4Recordsource=selefrom o cursor xxGrid1.visibled=.t.Thisform.refresh 页框控件实际上是选项卡界面。它的主要属性有:页框页面数pagecount、页框每一页标题caption例:设计一个如下所示的表单, 十、页框思考:请建立如下所示表单 图像控件允许在表单中显示图片。图像控件可以在程序运行的动态过程中加以改变。其主要属性有:图像文件picture、显示方式stretch十一、图像控件例:设计如右所示表单。 Active X控件的功能是向应用程序中添加OLE对象,它又称OLE控件。它用于显示一般的图片信息。而Active X绑定控件用于显示通用型字段(照片)的值。十二、Active X控件和Active绑定控件例:设计一个包含有OLE对象的表单。 表单集是容器对象,是一个或多个相关表单的集合,在表单集中可以把一条记录的字段放在不同的表单里。设计方法: 进入表单设计器“表单”创建表单集“表单”添加 新表单分另对各表单添加控件操作运行并保存表单集 十三、表单集例:通过表单集完成以下欢迎界面的设计。要求:第一个表单 的文字由小变大,好似由远到近,在暂停一会后,自动 天第二个表单。小 结

温馨提示

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

最新文档

评论

0/150

提交评论