VF教程表单设计与应用
Visual FoxPro VF第9章 表单设计及应用(2)

8.2 创建与管理表单
8.2.3 表单生成器
在表单设计环境下,可以调用表单生成器快速地产 生表单。调用表单生成器的方法有以下3种: (1)在系统菜单中选择“表单”菜单下的“快速表单” 命令。 (2)单击“表单设计器”工具栏中的“表单生成器”按 钮。 (3)右键单击表单窗口,然后在弹出的快捷菜单中选择 “生成器”命令。
Visual FoxPro数据库应用教程 7
8.1 面向对象程序设计的概念
在VFP中,当对象被创建后,就可以调用这 个对象的方法了。为对象设置方法的命令格式 如下: <对象引用>.<方法> 【例8.2】调用当前表单的方法,使文本框Textl获 得焦点,然后刷新表单。 Thisform.Textl.Setfocus Thisform.Refresh
Visual FoxPro数据库应用教程
2
8.1 面向对象程序设计的概念
8.1.2 常用对象的基类、容器类与控件类
1.容器类 容器(Container)类是能够包含其他对象的类。 容器对象称为父对象,其包含的对象称为子对象。 2.控件类 控件(Control)是指容器类对象内的一个图形 化的、能与用户进行交互的对象。控件类对象不 能容纳其他对象,如命令按钮、选择按钮、复选 框、文本框、标签等控件对象。
4.代码窗口
图8.21 代码窗口
Visual FoxPro数据库应用教程
18
8.3 表单设计器
8.3.2 表单的数据环境
1.打开数据环境设计器 打开数据环境设计器的方法有以下几种: (1)在表单设计器环境下,选择“显示”菜单中的“数据 环境”命令。 (2)单击“表单设计器”工具栏中的“数据环境”按钮。 (3)右键单击表单,从快捷菜单中选择“数据环境”命令。 打开数据环境设计器后,系统菜单栏上将出现“数据环境” 菜单。 2.数据信息与数据环境
vfpch7-第7章 表单的设计和应用1

18
鼠标事件(三)
MouseDown事件 当用户按下一个鼠标键时发生 MouseUp事件 当用户释放一个鼠标键时发生 DragDrop事件 当完成拖放操作时发生。 DragOver事件 控制拖过目标对象时发生此事件 PROCEDURE Object.DragOver LPARAMETERS [nIndex,] oSource, nXCoord, nYCoord, nState
12
2、引用一个对象的多个属性和方法
如:With Thisform.txtxh .backcolor=rgb(128,0,0) .forecolor=rgb(0,0,0) .refresh Endwith
3、引用容器中的多个对象
如:With Thisform .txtXh.backcolor=rgb(128,0,0) .txtXm.backcolor=rgb(0,128,0) Endwith
29
事件驱动和事件循环
事件驱动——程序代码的执行总是由某个事件
的发生而引发。
事件驱动程序设计是一种强调事件代码的程序
设计模型 利用VFP进行应用程序设计时,必须创建事件循 环(event loop) 事件循环是由READ EVENTS命令建立、 CLEAR EVENTS命令终止的交互的运行环境
14
响应事件
事件是对对象识别的一个动作,可以编写相
应的代码对此动作进行响应。 用户不能用其他的程序设计方法产生其事件, 但可以调用与这些事件相关的过程。 常用的事件类: 鼠标事件 键盘事件 表单事件 控件焦点事件 数据环境事件
15
相关事件
最小事件集、核心事件 容器层次事件和类层次中的事件
容器不处理与所包含的控件相关联的事件
VFP表单设计与应用

VFP表单设计与应用第九章 VFP表单设计与应用大纲要求使用表单设计器:(1)在表单中加入和修改控件对象。
(2)设定数据环境。
知识要点1.表单表单(Form)就是一个输入或显示某种信息的界面(窗口),是Visual FoxPro提供的用于建立应用程序界面的工具之一。
被大量应用于人机交互界面的设计当中。
应用表单设计功能,可以设计出具有Windows风格的各种程序界面。
由于表单使用非常频繁,所以在VFP中,专门提供了一个表单设计器来设计表单程序。
表单是一个容器,除含有窗口的标准控件标题栏、控制按钮外,可以向表单中添加各种对象,如按钮、文本框、表格、图片等。
在表单设计器环境下可以进行添加、删除及布局控件的操作。
2.对象对象(Object)是反映客观事物属性及行为特征的描述。
客观世界里的任何实体都可以被看作是对象。
对象可以是具体的物,也可以指某些概念。
从编程的角度来看,对象是一种将数据和操作过程结合在一起的数据结构,或者是一种具有属性(数据)和方法(过程和函数)的集合体。
事实上程序中的对象就是对客观世界中对象的一种抽象描述。
每个对象都具有描述其特征的属性,及附属于它的行为。
对象把事物的属性和行为封装在一起,是一个动态的概念。
对象是面向对象编程的基本元素,是“类”的具体实例。
3)类的四大特征§继承性--说明了子类延用父类特征的能力;§多态性--指一些关联的类包含同名的方法程序,但方法程序的内容可以不同,具体调用在运行时根据对象的类确定;§封装性--说明包含和隐藏对象信息,如内部数据结构和代码的能力;§抽象性--指提取一个类或对象与众不同的特征,而不对该类的所有信息进行处理。
4.子类与继承在面向对象的方法里,继承是指在基于现有的类创建新类时,新类继承了现有类里的方法和属性。
此外,可以为新类添加新的方法和属性。
我们把新类称为现有类的子类,而把现有类称为新类的父类。
一个子类的成员一般包括:(1)从其父类继承的属性和方法。
VFP课件第八章表单设计及其应用

thisform.lbl1.caption="赢" else thisform.lbl1.caption="输" endif
例2幸运七游戏结束。
2020/7/3
[例3]:密码判断
endcase
2020/7/3
[步骤8] 编写组合框(combo1)的click事件代码:
do case case this.value="红"
bel1.forecolor=rgb(255,0,0) case this.value="黄"
bel1.forecolor=rgb(255,255,0) case this.value="绿"
设计一个名为 mima.scx的表单。如图所示:单 击确认按钮判断密码是否为aaa,是执行幸运七 游戏,否则释放。要求:text1的最大长度为8。 密码输入时显示为* .
2020/7/3
确认的单击事件代码如下:
if thisform.text1.value="aaa" Do form my_formxy7 else thisform.release Endif
第八章
表单设计及其应用
8.2 表单设计器
1.表单设计器环境 2.表单控件工具栏 3.属性窗口
2020/7/3
8.3 表单的数据环境
1.数据环境设计器
(1)选择显示|数据环境命令 (2)右击表单界面,选数据环境
2.数据环境中数据表和字段的处理方法
2020/7/3
第10讲 Visual Foxpro表单设计与应用

4、运行表单 (1)、所谓运行表单:就是根据表单文件及表单备注文件的内容产生 表单对象。 (2)、运行表单的方法: A、“项目管理器”窗口/“文档”选项卡→“运行”按钮 B、“表单设计器”环境 →“表单”菜单、快捷菜单/“执行表单”命令 →“常用”工具栏按钮 C、“程序”菜单/“运行”命令→打开“运行”对话框→选择表单运行 D、“命令”窗口→输入命令: DO FORM <表单文件名> [NAME <变量名>] WITH <实参1> [,<实参2>,…] [LINKED] [NOSHOW] E、在表单设计器中使用键盘快捷键 CTRL+E 注意: 注意:表单运行后,可以单击标准工具栏上的“修改表单”按钮,切换 到“表单设计器”环境,使表单进入设计方式。
2、类(Class):面向对象的程序设计是一种封装代码,代码可重用性和可维护性都 较好,其中最基本的封装代码称为类,类是对一类相似对象的性质描述,同类 对象具有相同的性质——相同种类的属性以及方法。 3、对象与类:所有对象的属性、事件和方法程序在定义类时被指定。 (1)、类的类型:基类、子类、用户自定义类、容器类、库类。 a、基类(Base Class):是Visual FoxPro预先定义的类。 基类都有自己的一套属性、方法、事件。 b、子类(Subclass):是指以某个类的定义为基础创建的新类,子类 所基于的类称为父类。 子类将继承父类的全部特征,包括对父类所做的任何修改。 c、用户自定义类(User-define Class):用户可以从基类派生出子类 ,即用户自定义类。 用户可以为用户自定义类设置属性、编写代码、方法程序,也 可创建新的属性和方法程序。也可添加到表单控件工具栏中。 d、容器类(Container Classes)、控件类(Control Classes): 类也可分为容器类和控件类。 主讲:黄威 QQ:951691824 生成的对象也可分为容器对象和控件对象 e、类库(Class Library):类库可用来存储以可视方式设计的类,其文
VF第6章表单设计与应用.ppt

(占考试笔试分值6至12分[一般是 3至6道题])
Visual FoxPro程序设计(等级考试版)
内容提要
6.1 面向对象的概念
6.2 Visual FoxPro基类简介
6.3 创建与管理表单
6.4 表单设计器 6.5 表单属性和方法 6.6 基本型控件 6.7 容器型控件
Visual FoxPro程序设计(等级考试版)
Visual FoxPro程序设计(等级考试版)
在对象的嵌套层次关系中,要引用其中的某个对象,需 要指明对象在嵌套层次中的位置。此时,经常会用到如表6-4 所示的几个属性或关键字。
6.2.3 事件(Event)
事件是由对象识别和响应的某些操作。例如:用户单击、 移动鼠标等操作。
Visual FoxPro程序设计(等级考试版)
派生类具有父类的全部特性,并且还具有新增加的数据 和方法。
类具有继承性、封装性、多态性。
Visual FoxPro程序设计(等级考试版)
在客观世界中,有许多具有相同属性和行为特 征的事物。例如,把星级宾馆看成一个类,那么江 西宾馆、洪都宾馆、江西饭店、五湖大酒店就是星 级宾馆类的4个实例。再如,把桥梁看成是抽象的类, 那么南京长江大桥、武汉长江大桥、八一桥就是这 个类的具体的实例(对象)。
Visual FoxPro程序设计(等级考试版)
2. 类(Class)
类是对一类相似对象的性质描述,这些对象具有相同的 性质:相同种类的属性以及方法。
类好比是一类对象的模板,有了类定义后,基于类就可 以生成这类对象中任何一个对象。 类可以由已存在的类派生而来,类之间是一种层次结构。 处于上层的类称为父类,处于下层的类称为派生类。
VF 表单设计与应用

表单设计与应用6.1面向对象类:相似对象的性质描述(具有相同属性特征和行为规则的多个对象的一种同一描述)对象:由属性和相关方法组成的包,属性表示对象的状态,方法描述对象的行为(类的一个实例)对象是类的实例(笔试要点)类的继承性:子类继承父类的全部特征和方法程序P173(同遗传和变异) 笔要白种人(子类)大儿子人(父类)黄种人(子类)父(父类)女儿黑种人(子类)小儿子VF基类:容器类和控件类,分别生成容器(对象)和控件(对象)事件:一种系统预先定义而由用户或系统发出的动作(可以由对象识别的一个动作)方法定义在类中,但执行方法的主体是对象事件集是对象固有的,而方法集基类介绍:教材P174复选框、组合框、命令按钮、编辑框、表单、表格、标签、列表框、选项按钮、选项按钮组、页、页框、微调按钮、文本框、定时器……VF的基类无父类(p175例6.1) 见例题例:我们外语系09级4班有个唐迪this——>唐迪我在4班上课时找——>唐迪this.parent——>09级4班我在外语系找——>09级4班.唐迪this.parent.parent——>外语系我在学校找——>外语系.09级4班.唐迪thisform——>邵阳学院我在邵阳找——>邵阳学院.外语系.09级4班.唐迪基类的最小的事件集INIT:对象生成引发(初始化事件)命令按钮COMMAND1有CLICK事件DESTORY:对象从内存释放引发(关闭时引发) 功能:用鼠标单击此按钮会引发CLICK事件ERROR:出错引发结果:运行CLICK事件中的程序代码事件的独立性原则,每个对象识别并处理属于自己的事件。
但命令按钮组和选项按钮组例外p177 (笔试要点理解)操作:表单的建立修改建立表单的方法项目管理器命令方式:CREA FORM 表单名菜单方式:新建——>表单修改:MODI FORM 表单名表单文件后缀名.SCX,表单备注文件.SCT表单的运行运行:DO FROM 表单名 (注意LINKED 关键字的应用) 笔要点例DO FROM MYFORM——>清除变量CLEAR MYFORM——>表单不关闭DO FROM MYFORM LINKED—>清除变量CLEAR MYFORM—>表单关闭表单设计器1、属性窗口介绍:AutoCenter,Caption,Enable,Name,ShowWindow,Visble,Width,Height 表单的属性P187Caption:表单标题。
Visual FoxPro程序设计基础第5章 表单设计和应用 简明教程PPT课件

高等学校计算机应用规划教材 第5章 表单设计和应用
5.1.1 类与对象
1.类
类是对一类相似对象的性质描述,这些对象具有相同种类的属性以及方 法。(例如,学生可以是一个类,所有学生相同的数据牲,即学号,姓名, 年龄,班级等)。
2.对象(Object)
客观世界里的任何实体都可以被看作是对象。对象可以是具体的物,也 可以指某些概念。 从编程的角度来看,对象是一种将数据和操作过程结合在一起的数据结 构,或者是一种具有属性(数据)和方法(过程和函数)的集合体。事实上 程序中的对象就是对客观世界中对象的一种抽象描述 (1)对象属性:属性用来表示对象的状态。 (2)对象方法:对象方法是描述对象行为的过程。
《 Visual FoxPro 程序设计基础 》
高等学校计算机应用规划教材
第5章 表单设计和应用
2. 对象的引用
每一个对象都有一个名称,给对象命名时,在同一个父容器下 的对象不能重名,对象不能单独引用,需要给出父容器的对象名, 对象引用的一般格式是: OBJECT1.BJECT2.„„ 其中,OBJECT1,和OBJECT2是对象的名字,OBJECT1是OBJECT2 的父容器,表示内容是对象OBJECT2的,而不是OBJECT1的,对象与 父对象的名字之间用圆“.”分隔。 如果要引用对象的属性或方法,则只需直接在引用形式后加圆 点“.”,再给出属性名或方法名即可。 OBJECT1.OBJIECT2.„.属性名 OBJECT1.OBJIECT2.„.方法名
类A的属性 类A的方法
父类
子类
类A的属性 类A的方法 类B添加的属性 类B添加的方法
图5-1 类的继承性
高等学校计算机应用规划教材 第5章 表单设计和应用
vf第六章表单设计与应用

表单(Form)是VFP提供的用于建立应用程序 界面的最主要的工具之一。表单内可以包含命令 按钮、文本框、列表框等各种界面元素,产生标 准的窗口或对话框。本章首先简单介绍面向对象 的若干基本概念及VFP中的基类,然后介绍表单 的创建与管理,表单设计器环境以及在该环境下 的一些操作,如控件的添加、删除、布局,表单 数据环境的设计,最后介绍一些常用的表单控件。
6.2.2容器与控件
VFP中的类一般可分为两种类型:容器类和 控件类。相应地,可分别生成容器(对象)和控件 (对象)。 控件是一个可以以图形化的方式显示出来并 能与用户进行交互的对象,例如一个命令按钮、 一个文本框等。控件通常被放置在一个容器里。 容器可以被认为是一种特殊的控件,它能包容其 他的控件或容器,例如一个表单、一个表格等。 这里把容器对象称为那些被包容对象的父对象。 见书p192表6.3列出了VFP中常用的容器及其所 能包容的对象。
6.3.3常用事件与方法
下面介绍表单以及控件常用的一些事件和方法: 1.Init事件 在对象建立时引发。在表单对象的Init事件引 发之前,将先引发它所包含的控件对象的Init事 件,所以在表单对象的Init事件代码中能够访问 它所包含的所有控件对象。 2.Destroy事件 在对象释放时引发。表单对象的Destroy事件在 它所包含的控件对象的Destroy事件引发之前引发, 所以在表单对象的Destroy事件代码中能够访问它 所包含的所有控件对象。
④在命令窗口输入命令: DO FORM 表单文件名 [NAME<变量名>] WITH<实参1>[,<实参2>…][LIKED][NOSHOW] 所谓运行表单就是根据表单文件及表单备注文件的 内容产生表单对象。 如果包含NAME子句,系统将建立指定名字的变量, 并使它指向表单对象;否则,系统建立与表单文件同 名的变量指向表单对象。 如果包含WITH子句,那么在表单运行引发Init事件 时,系统会将各实参的值传递给该事件代码PARA或 LPARAMTERS子句中的各形参。
VFP《表单设计与应用》教案

01
02
03
选择数据绑定方式
根据实际需求选择合适的 数据绑定方式,如静态绑 定、动态绑定等。
设置数据显示方式
通过表单控件属性设置, 定义数据的显示方式,如 文本框、标签、表格等。
实现数据格式化
根据需要对数据进行格式 化处理,如日期格式、数 字格式等。
数据操作事件处理机制
定义数据操作事件
根据实际需求定义数据操 作事件,如添加、修改、 删除等。
使用清晰易读的字体
选择适合阅读的字体,并保持适当的 字号和行间距,确保用户能够轻松阅 读表单内容。
优化图标和图片
使用简洁明了的图标和高质量的图片 ,提升表单界面的视觉效果。
保持布局整洁
合理安排表单元素的位置和间距,避 免拥挤和混乱,使界面更加整洁有序 。
响应式布局实现方法
使用媒体查询
利用CSS媒体查询,根据设备屏 幕尺寸调整表单布局,实现不 同设备上的良好展示效果。
实战演练:从需求到实现全过程剖析
设计阶段
制定设计方案,包括表单布局 、控件选择、数据验证等
测试与调试
对实现的表单进行测试,确保 功能正常、数据准确,并进行 必要的调试和优化
需求分析
明确用户需求,确定表单功能 和数据流程
编码实现
使用VFP编程语言实现表单设 计,包括界面制作、事件处理 、数据库连接等
教学方式
采用讲授、演示、实践相结合的方式进行教学。通过案例分析、小组讨论等方式引导学生 积极参与课堂活动。
考核方式
采用平时成绩和期末成绩相结合的方式进行考核。平时成绩包括课堂表现、作业完成情况 等;期末成绩采用闭卷考试形式,主要考察学生对课程内容的掌握程度和应用能力。
02
计算机二级VF第七章 表单设计与应用

第七章表单设计与应用第一节面向对象的概念一、对象与类1.对象(Object)客观世界里的任何实体都可以被看作是对象。
每个对象都有自己的属性和方法。
属性用来表示对象的状态/形态,方法用来描述对象的行为。
我们可以把对象看成由属性和方法组成的包2.类(Class):类是对一类相似对象的性质的描述,这些对象具有相同的性质:相同种类的属性及方法。
二、子类与继承继承表达了一种从一般到特殊的进化过程。
一个子类的成员一般包括1)从其父类继承的成员(父类的属性、方法)2)由子类自己定义的成员(自已特有的属性、方法)第二节 Visual FoxPro基类简介一、Visual FoxPro基类CheckBox复选框ComboBox组合框CommandButton命令按钮CommandGroup命令按钮组EditBox编辑框Form表单FormSet表单集Grid 表格/Column 列/Header 列标头Label标签ListBox列表框OptionButton选项按钮OptionGroup选项按钮组Page页PageFrame页框Spinner微调控件TextBox文本框Timer定时器(计时器)二、Visual FoxPro基类的最小属性集Class 类名BaseClass 基类名ClassLibrary 类库名ParentClass 父类名三、容器与控件1.容器:能包容其它对象的对象。
如表单、页框、页、命令按钮组等2.控件:不能包容其它对象的对象。
如命令按钮、选项按钮等注意:不同的容器所能包容的对象也不相同。
*容器层次中的对象引用属性或关键字Parent 包容当前对象的容器This 当前对象ThisForm 包容当前对象的表单*ThisFormSet包容当前对象的表单集四、事件事件是一种由系统预先定义而由用户或系统发出的动作。
事件作用于对象,对象识别事件并作出相应反应。
*Visual FoxPro基类的最小事件集Init 初始化Destroy 释放Error 出错第三节创建与管理表单一、创建表单1.使用表单向导创建针对表文件操作的即用表单新建→表单→表单向导→选择要使用的向导(表单向导/一对多表单向导)→确定2.使用表单设计器创建、设计、修改表单命令格式:CREATE FORM <表单名>MODIFY FORM <表单名>3.运行表单命令格式:DO FORM <表单名>作业:1.使用表单向导创建针对医生表的专用表单,文件名为YISHENG.SCX,标题为"医生信息查询"2.完成机试模拟题中的如下几题:四|二|1 七|二|1 三十九|二|2四十三|二|1 四十九|二|1二、管理表单属性和方法1.常用的表单属性⑴AlwaysOnTop:指定表单是否总是位于其他打开的窗口之上(.F.)⑵AutoCenter:指定表单初始化时是否居中(.F.)2.创建新属性表单→新建属性→在名称框中输入属性名称→添加→关闭3.创建新方法(注:不能创建新事件)表单→新建方法程序→在名称框中输入方法的名称→添加→关闭三、常用事件与方法1.Init事件:在对象建立时引发2.Destroy事件:在对象释放时引发3.Error事件:当对象方法或事件代码在运行时产生错误时引发4.Load事件:在表单对象建立前引发(Init 事件之前)5.UnLoad事件:在表单对象释放时引发(Destroy事件之后)注:在表单运行时,对象的事件引发顺序: 表单的LOAD事件→表单各下属对象的INIT 事件→表单的INIT事件注:在表单关闭时,对象的事件引发顺序: 表单的DESTROY事件→表单各下属对象的DESTROY事件→表单的UNLOAD事件6.GotFocus事件:当对象获得焦点时引发。
VFP表单的设计和运用

bel1.Visible=.t.
this.Caption="隐藏"
else
bel1.visible=.f. this.caption="显示"
Endif
注意:这里的Myform1是表单的文件名:myform1.scx 5、设计command2的click事件代码:(退出)
第八章 表单设计与应用
本章基本内容 8.1 面向对象的概念 8.2 Visual Foxpro基类简介 8.3 创建与管理表单 8.4 表单设计器 8.5 常用表单控件
1
面向对象的概念
(一)对象(Object) 1.什么是对象:所谓对象可以是任何的具体实体 2.对象的分类:对象分为容器对象和简单对象 3.对象的名称:每个对象都有一个名字,称为对象名 4.对象的引用
form2.Image2.Visible=.f. form2.Image1.Visible=.t. bel1.Caption="圆“ 6、 设计command2的click事件代码(显示)为: form2.Image1.Visible=.f. form2.Image2.Visible=.t. bel1.Caption="方框“ 7、设计command3的click事件代码:(退出) release thisform 8、运行时发现:当按下圆时,显示出圆形图案
右键单击
表单事件
Load Unload Resize
Activate
创建表单 关闭表单 改变大小
激活表单
键盘事件 KeyPress 按键盘键
Deactivate 非激活状态
Gotfocus 得到焦点
《Visual FoxPro面向对象程序设计及应用》第11章 表单设计及应用PPT课件

《Visual Foxpro面向对象程序设计及应用》第11章 表单设计及应用
常用表单方法程序
方法程序 AddObject Box Circle
Cls
Clear Draw Hide
Line
用途
方法程序
在表单对象中增加一个对象 M ove
在表单对象上画一个矩形
在表单对象上画一段圆弧或一 Pset 个圆 清除一个表单中的图形和文本 Refresh
清除控件中的内容 重新绘制表单对象 隐藏表单、表单集或控件
7
《Visual Foxpro面向对象程序设计及应用》第11章 表单设计及应用
表单事件
表单事件是表单可以识别和响应的行为和动作 。事件识别和响应是面向对象程序设计中实现 交互操作的手段。表单和控件的事件是由系统 事先规定的,用户不能在对象上增加或减少事 件。一个事件对应于一个方法程序,称为事件 过程。当一个事件被触发时,系统执行与该事 件对应的过程代码。事件过程执行完毕后,系 统又处于等待某事件发生的状态,这种控制机 制称为事件驱动方式。
表单向导
表单向导是通过使用Visual FoxPro系统提供的 功能快速生成表单程序的手段,通过使用表单 向导可以两种表单:
① 选择“表单向导”可以创建基于一个表的表 单。
② 选择“一对多表单向导”可以创建基于两个 具有一对多关系的表的表单。
15
《Visual Foxpro面向对象程序设计及应用》第11章 表单设计及应用
表单数据环境
如果表单或表单集的功能与一个数据表或视图 有关,一般而言应包括一个数据环境。表单的 数据环境是指在创建表单时需要打开的全部表 、视图和关系。在表单的数据环境中,可以添 加与表单相关的数据表或视图,并设置好表单 、控件与数据表或视图中字段的关联,形成一 个完整的数据体系。
VFP《表单设计与应用》教案

表单设计与应用
一、提出任务
1.任务目标
在前面所学使用表单设计器创建表单的基础上,讲解如何将多个控件联系起来。
2. 解决的问题
能够合理运用多个控件制作综合实例。
3. 知识要点
∙属性
∙事件
∙控件过程代码的编写
二、教学目标
1. 知识目标
⑴掌握表单设计器窗口的操作
⑵掌握控件的添加
⑶掌握控件过程代码的编写
2. 能力目标
能够合理运用多个控件制作综合实例。
3. 情感目标
通过实践,培养学生的创新能力,能够设计出符合要求的窗口,使学生尝试成功的喜悦。
三、教学分析与准备
1. 教学重点
⑴表单控件属性的设置
⑵过程代码的编写
2.教学难点
⑴表单控件属性的设置
⑵过程代码的编写
3. 教学方法
任务驱动学习和协作学习、探究学习相结合
4. 课时安排
2课时
5. 教学环境
多媒体网络教室
拓展练习:
根据本节课所学知识完成下图所示表单。
要求:选择第二项时提示信息为对,选择其它选项时提示信息为错。
Visual FoxPro程序设计基础第10章表单的设计与应用

•
在本例中,选择“阴影式”和“文本 按钮”选项,如图10.13所示。 单击“下一步”按钮。
•
图10.13 步骤4-选择表单样式
•
(6)打开“步骤5-排序次序”对话框, 从中选择排序记录的字段或索引标识。
•
在本例中选择按“学号”升序排列, 如图10.14所示。 设置完成后单击“下一步”按钮。
•
图10.14 步骤5-排序次序
•
(7)打开“步骤6-完成”对话框,从 中输入表单的标题。
•
在本例中,输入“学生选课情况”, 并选中“保存并运行表单”单选按钮,如 图10.15所示。
图10.15 步骤6-完成
•
然后单击“预览”按钮,便可以查看 运行的效果,最后单击“完成”按钮,在 弹出的“另存为”对话框中,输入表单文 件的名称,并选择相应文件的保存路径。 表单的运行效果如图10.16所示。
•
(6)在弹出的“另存为”对话框中, 输入表单的名称。
•
在本例中输入表单名称为“教师信息表”, 并选择相应的表单文件保存路径,设置完成 后单击“保存”按钮,如图10.8所示。 保存后的表单文件将立即被运行,其运行 .8 保存表单文件
图10.9 表单运行效果
2.创建一对多关系表单
10.1.1
• •
使用表单向导创建表单
打开“向导选取”窗口的方式有以下3种。
(1)打开项目管理器,选择“全部”选 项卡,从列表框中选择“文档”/“表单” 命令,再单击“新建”按钮,然后在弹出的 “新建表单”对话框中选择“表单向导”图 片按钮,如图10.1所示。
图10.1 利用项目管理器打开表单向导
•
在本例中,选择“学生表”为父表,然 后在“可用字段”列表框中选择“学号”、 “姓名”、“性别”、“出生日期”等字段, 添加到“选定字段”列表框中,单击“下一 步”按钮。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
• 指定按下ESC键时,哪个命令按钮响应 • 在一个表单中,只能有一个Cancel属性值为.T.
24
7.5 基本型控件
❖ 命令按钮控件
▪ 【例7.7】新建一个表单文件myform.scx,其中包含2个命令按钮,标题 为“OK”、“Cancel”。如图所示。将“OK”按钮设置为确认按钮,即 通过按“Enter”可以选择该按钮,并将其宽度设为60。“Cancel”按钮 的第1个字母C设置成“访问键”即通过按Alt+C就可以选择该按钮。单击 “Cancel”按钮,关闭并释放表单。 ① 新建表单,添加2个命令按钮 ② 属性设置
• 指定与对象建立联系的数据源:字段或内存变量
▪ Value属性
• 指定或返回文本框中的当前内容,默认为空串 • 可以接收任意类型数据
➢ 非数字字符型数据或数值型数据时,直接输入 ➢ 数字字符型数据,数据两端要字符定界符 ➢ 表达式的值,以等号引导
26
7.5 基本型控件
❖ 文本框控件
▪ PasswordChar属性
31
7.5 基本型控件
❖ 列表框控件
▪ 列表框(ListBox)控件包含一个选项列表,用户可以 从列表中选择各个选项
▪ RowSourceType属性
• 指定列表框中列表项的数据源类型
▪ RowSource属性
• 指定列表框中列表项的数据源
32
7.5 基本型控件
❖ 列表框控件
▪ List属性
• 用字符串数组List来存取列表框控件中的各个数据项 • 设计时不可用 • 读取列表框中第4行第2列的数据项“徐建军”并在文本框显示
•运行表单引发事件顺序:
•Load控件的Init表单的Init
•释放表单引发事件顺序: 表单的Destory控件的Destory 表单的Unload
20
7.4 表单的属性、事件和方法
❖ 创建新的属性和方法
▪ 创建新属性
▪ 创建新方法
21
7.4 表单的属性、事件和方法
❖ 创建新的属性和方法
▪ 【例7.5】新建一个表单,在该表单中添加一个名为new 的方法,方法代码为:wait "new" windows。
14
7.4.1 定义表单外观的属性
AlwaysOnTop属性 该属性设置表单在多个窗口时的层次。 为真(.T.)时:本表单总在窗口的最前面,不会被其他窗口遮
盖。为假(.F.)时:本表单可以被其他窗口所遮盖。 AutoCenter属性 决定表单在VF窗口中的位置是否剧中 BackColor属性 该属性设置表单窗口的背景颜色 BorderStyle属性 指定表单边框样式。0:无边框。1:单线边框。2:固定对话框
• 对象的三要素
➢ 属性:用来描述对象的状态,是对象的静态物理特征
➢ 事件:一种预先定义好的能被对象识别和响应的动作
➢ 方法:用来描述对象的行为过程
• VFP中的对象
•表单是对 象
•标签是对象
•组合框是对 象
•列表框是对 象
•命令按钮是对 象
5
类的概念
❖ 类是具有相同或相似性质的对象的抽象,也就是 说类是具有相同属性、共同方法的对象的集合
27
7.5 基本型控件
❖ 文本框控件
•【例7.8】建立如图7.48所示表单。表单文件名和标题名均为“文本框使用”。 •在操作数1(Label1)和操作数2(Label2)下的2个文本框(分别为Text1和 •Text2)中只能接收数字、正负号和空格,宽度为5,“计算”按钮的初始状态为 •不可用,当运行表单后,其状态为可用。单击“退出”按钮关闭并释放表单, •运行结果如图7.49所示。 •(1)新建表单,添加2个标签、2个文本框、2个命令按钮。 •(2)属性设置
•MaxButton属性 •为真(.T.)时:最大化按钮有效,可以将表单最大化或还原表单大小。 •为假(.F.)时:最大化按钮无效,不可以最大化表单。
•MinButton属性 •为真(.T.)时:最小化按钮有效,可将表单最小化显示在任务栏处。 •为假(.F.)时:最小化按钮无效,不能将表单最小化。
•Movable属性 •运行时,用户是否能够移动表单。 •为真(.T.)时:能移动表单。 •为假(.F.)时:不能移动表单。
③ 编写代码
• “OK”按钮的Click事件代码:
•
Thisform.Caption=“确认”
•
“Cancel”按钮的Click事件代码:
•
Thisform.Release
25
7.5 基本型控件
❖ 文本框控件
▪ 文本框控件(Text)用于显示文本,也用于编辑文本 ▪ ControlSource属性
18
7.4.2 表单常用事件
Click事件 用户在某个对象上单击鼠标时,触发该事件。 DbClick事件 鼠标双击对象时触发该事件。 RightClick事件 鼠标右键单击对象时触发该事件。 Init事件 创建对象时触发。控件Init事件在表单Init事件前引发,因
此在表单Init事件代码中访问它所包含的所有控件对象。 Destroy事件 当释放一个对象时触发。表单Destroy事件在控件Destroy事
10
7.2 创建表单
❖ 使用表单设计器创建表单
▪ “文件”“新建” ▪ CREATE FORM
11
7.2 创建表单
❖ 修改表单
▪ “文件”“打开” ▪ MODIFY FORM <表单文件名>
• MODIFY FORM 学生情况.scx
❖ 表单的保存和运行
▪ 保存表单 (表单文件扩展名:.scx) ▪ 运行表单(多种方法)
•1.表格RecordSourceType属性值为“4-SQL说明 ”•2.“查询”按钮的Click事件代码: •xh=Alltrim(ThisForm.Text1.Value) •kch=Alltrim(ThisForm.Text2.Value) •IF ThisForm.OptionGroup1.Value=1 • ThisForm.Grid1.RecordSource="SELE * FROM; • 选课 WHERE 学号=xh INTO CURSOR tmp" •ELSE • ThisForm.Grid1.RecordSource="SELE * FROM; • 选课 WHERE课程号=kch INTO CURSOR tmp" •ENDIF
16
7.4.1 表单其他属性
•ShowWindow属性 •指定一个表单或工具栏是否是顶层表单或是子表 单 •0:在屏幕中(默认值) •1:在顶层表单中 •2:作为顶层表单
•WindowType属性 •表单的模式状态。 •0:非模式表单,在应用程序中,在关闭运行的非模式 表单之前,可以访问程序中的其他界面元素。 •1:模式表单,在应用程序中,在关闭运行的模式表单 之前,不能访问程序中的其他界面元素。
12
7.3控件的操作与布局
对于表单上的控件 可以进行以下操作
•选择控件 •移动控件 •缩放控件
•复制控件 •删除控件 •控件对齐
设置Tab键次序
13
7.3.3 数据环境
向数据环境添加表或视图: 右键单击“数据环境设计器窗口”,然后在弹出 的快捷菜单中选择【添加】命令
从数据环境中移去表或视图: Fra bibliotek键单击要移去的表或视图,然后在弹出的快捷 菜单中选择【移去】命令
17
7.4.2 表单常用方法
(1)Refresh方法:刷新表单。 (2)Release方法:将表单从内存中释放。表单运行时,用
户单击表单右上角的关闭按钮,系统会自动执行Relase方 法。 (3)Show方法:显示表单。该方法将表单的Visible属性设 置为.T.。 (4)Hide方法:隐藏表单。该方法将表单的Visible属性设 置为.F.。与Relase方法不同,Hide只是把表单隐藏,但 并不将表单从内存释放,之后可用Show方法重新显示表单 。 (5)SetFocus方法 使控件获得焦点,从而成为活动对象。当该控件的Visible 属性值或Enabled属性值为.F.时,将不能获得焦点.
23
7.5 基本型控件
❖ 命令按钮控件
▪ Caption属性
• 指定对象的标题文本内容 • 访问键:退出(\<E) • mand1.Caption="退出(\<E)"
▪ Default属性
• 指定按下ENTER键时,哪个命令按钮响应 • 在一个表单中,只能有一个命令按钮的Default属性值为.T.
❖ 表格控件
▪ 表格基本操作
• 通过设置表格的HeaderHeight和RowHeight属性调整行高,设置 列对象的Width属性调整列宽
• 当表格处于编辑状态下,用鼠标拖动调整表格的行高和列宽 • 使用表格生成器设计表格
30
7.6 容器型控件
❖ 表格控件
▪ 【7.18】修改【例7.17】的选课查询表单,添加一个表 格,将查询的结果显示在表格中
•(3)编写代码。 • Form1的Init事件代码: • mand1.Enabled=.T. • “退出”按钮的Click事件代码: • Thisform.Release
28
7.6 容器型控件
❖ 表格控件
• 表格是一个可与数据绑定的容器控件,由若干列对象组成,列 包含标头和控件,列拥有自己的属性、事件和方法。
• ColumnCount属性
➢ 指定表格列对象的数目。该属性默认值为-1,此时表格将创建足 够多的列来显示数据源中的所有字段。
• RecordSourceType属性和RecordSource属性
➢ RecordSource属性为记录源 ➢ RecordSourceType属性为记录源类型