版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
单元15表单技术【主要内容】面向对象程序设计和概念创建表单表单管理【目的要求】掌握面向对象程序设计的基本概念、基本思想、方法掌握表单的创建、设置方法【课时安排】
共8课时单元15表单技术【主要内容】【目的要求】【课时安排】一、提出问题1(演示效果一)
软件的使用界面是非常重要的。在图书管理系统中用到了很多的界面,这些界面在VFP设计中用到了哪些技术呢?这些技术和传统的过程化的设计有什么区别呢?
一、提出问题1(演示效果一)软件的使用界面是非二、基本知识(一)对象1.什么是对象:所谓对象(Object)可以是任何的具体实体。2.对象的分类:对象分为容器对象和简单对象。3.对象的名称:每个对象都有一个名字,称为对象名。4.对象的引用:绝对引用:完整的容器层次描述的引用相对引用:相对当前对象的引用方法。相对引用的关键字关键字引用关系Activecontrol当前活动表单中具有焦点的控件Activeform当前活动表单Activepage当前活动表单中的活动页This该对象本身Thisform包含该对象的表单Thisformset包含该对象的表单集Parent包含该对象的直接容器二、基本知识(一)对象1.什么是对象:所谓对象(Objec二、基本知识(二)对象的属性1.什么是属性:对象的属性(Properity)是指对象的一项描述内容,用于描述对象的外观和行为的特征2.属性的名称:每个属性都有一个名字,称为属性名。3.属性的表示:对象名.属性名=属性值常用对象的属性:作用属性名意义作用属性名意义表示大小Height高字体情况Fontsize字体大小Width宽Fontname字体名表示位置Top离上面距离FontBold是否加粗Left离左边距离其他Caption标题文字颜色Forecolor前景色Name对象名Backcolor背景色Enabled是否可用DisableColor不可用时色Value当前值思考:如何进行属性的设置?二、基本知识(二)对象的属性1.什么是属性:对象的属性(P二、基本知识(三)对象的事件1.什么是事件:事件(event)是由VisualFoxPro6.0预先定义好的、能被对象识别和响应的动作或状态.2.事件的分类及常用事件:见下表类别事件名意义类别事件名意义鼠标事件Click单击表单事件Load创建表单Dblclick双击Unload关闭表单MouseMove移动鼠标Resize改变大小RightClick右键单击Activate激活表单键盘事件KeyPress按键盘键Deactivate非激活状态控制焦点事件Gotfocus得到焦点Init初始化Lostfocus失去焦点数据环境事件Beforeopentables表打开前When得到焦点前Afterclosetables表关闭后Valid失去焦点前其他事件Times计时器改变控件内容事件Interchange交互改变Error出错时思考:能否建立新的事件?二、基本知识(三)对象的事件1.什么是事件:事件(even二、基本知识(四)对象的方法1.什么是方法:对象的方法(Method)是指与对象相关的程序.2.方法的名称:VFP规定了一些方法,用户也可为某对象定义方法.常用对象的的方法如下:方法名说明Release关闭、退出Refresh重新显示表单和控制并刷新表单中的所有值AddObject在运行时向容器对象中添加对象Clear清除组合框或列表框控件的内容Show显示表单Requery重新查询3.方法的使用:对象名.方法名如:关闭当前表单用:thisform.release二、基本知识(四)对象的方法1.什么是方法:对象的方法(M二、基本知识(五)类1.什么是类:具有相同属性的对象组成的集合称为类.2.子类:类中具有特殊属性的对象的集合称子类.
子类具有继承性、封装性和多态性。3.类的分层结构:容器类:可以包含其他对象。控件类:不能包含其他对象。4.VFP的基类:VFP系统已提供的可直接使用的类。VFP能使用的基类见教材P226二、基本知识(五)类1.什么是类:具有相同属性的对象组成的文本框选项按钮组微调控件页框形状生成器锁定标签命令按钮组列表框计时器线条超级连接查看类命令按钮组合框图象ActiveX绑定控件分隔符选定对象编辑框复选框表格ActiveX控件容器命令锁基本容器控件二、基本知识(六)控件控件(control)是放在一个表单上用以显示数据、执行操作或使表单更易阅读的一种图形对象,如文本框、矩形或命令按钮等。常用控件由VisualFoxPro6.0的基类提供,共21个。文本框选项按钮组微调控件页框形状生成器锁定标签命令按钮组列表二、基本知识(七)可视化编程步骤1.建立应用程序的用户界面,主要是建立表单;2.在表单中添加所需的各种对象,一般由控件创立;3.设置各对象(表单及控件)的属性;4.编写方法及事件过程代码;5.调试、运行应用程序;二、基本知识(七)可视化编程步骤1.建立应用程序的用户界面三、课堂实战建立如下图所示的表单,表单上有一个形状、一个标签、三个命令按钮,单击按钮“圆”,则显示红色的圆,单击按钮“方框”,则显示白色的方框,单击按钮“退出”,则退出该表单。请注意操作步骤、操作方法。三、课堂实战建立如下图所示的表单,表单上有一个形状、一个标签本次课小结
软件设计中的界面设计:其特点是什么?
面向对象技术的关键术语:对象、属性、事件和方法。
类的概念以及特点,类的划分。
面向对象的设计步骤。延伸:面向对象的设计和面向过程的设计有什么区别?各有什么特点?四、归纳与延伸本次课小结
软件设计中的界面设计:其特点是什五、课外探索及作业上机练习:将课堂实例进行改进,效果如下:要求:在课外独立完成,完成后通过电子邮件发送给老师。书面练习:教材P232(1、8、9题)五、课外探索及作业上机练习:将课堂实例进行改进,效果如下:书旧课复习
如何进行上述各步?课前回顾(提问)可视化编程步骤1.建立应用程序的用户界面,主要是建立表单;2.在表单中添加所需的各种对象,一般由控件创立;3.设置各对象(表单及控件)的属性;4.编写方法及事件过程代码;5.调试、运行应用程序;6.编译、制作程序发布。旧课复习
如何进行上述各步?课前回顾(提问)可视化编程步骤一、提出问题2(演示效果二)VFP中界面的设计是由表单完成的。那么表单如何创建?表单中的对象如何布局呢?表单如何美化呢?一、提出问题2(演示效果二)VFP中界面的设计是由二、基本知识(一)表单建立、修改和运行方法一:使用表单设计器。进入表单设计器的方法:命令法:CREATEFORM表单文件名工具法:使用“新建”工具菜单法:使用“新建”菜单注意:可在“选项”中设置表单的默认大小。方法二:使用表单向导。进入表单向导的方法:工具法:使用“新建”工具菜单法:使用“新建”菜单在项目管理器中的向导方法三:使用快速表单。先在项目管理器中选定表单,然后单击“新建”按钮,将出现“新建表单”对话框,单击“新建表单”按钮,打开表单设计器,此时,在主菜单中将会有一个“表单”选项,打开这个菜单,选择快速表单,就可以启动快速表单了。1、建立表单二、基本知识(一)表单建立、修改和运行方法一:使用表单设二、基本知识方法一:使用表单设计器。进入表单设计器的方法:命令法:CREATEFORM表单文件名工具法:使用“新建”工具菜单法:使用“新建”菜单表单设计器的结构1、选择“文档”选项卡2、选择“表单”3、单击【新建】4、进入新建表单程序,弹出“新建表单”对话框单击“表单设计器”窗口新表单在新表单(Form1)上可以可视化地添加控件并进行属性、方法程序设计。二、基本知识方法一:使用表单设计器。命令法:CREATE二、基本知识表单设计器的工具栏设置Tab次序数据环境二、基本知识表单设计器的工具栏设置Tab次序数据环境方法二:使用表单向导。进入表单向导的方法:工具法:使用“新建”工具菜单法:使用“新建”菜单在项目管理器中的向导二、基本知识为单个表创建操作数据的表单为两个相关表创建数据输入的表单,在表单的表格中显示子表的字段.向导步骤:1.启动表单向导2.从父表中选定字段3.从子表中选定字段4.建立表之间的关系5.选择表单样式6.完成方法二:使用表单向导。工具法:使用“新建”工具二、基本知方法三:使用快速表单。先在项目管理器中选定表单,然后单击“新建”按钮,将出现“新建表单”对话框,单击“新建表单”按钮,打开表单设计器,此时,在主菜单中将会有一个“表单”选项,打开这个菜单,选择”快速表单”,就可以启动快速表单了。二、基本知识方法三:使用快速表单。二、基本知识二、基本知识2、保存表单存盘文件名为.SCX、.SCT,也可存为“类”。3、修改表单打开表单,进入表单设计器。用命令:MODIFYFORM表单文件名也可进入表单设计器。4、运行表单方法一:在项目管理器窗口中,选择要运行的表单,然后单击窗口里的“运行”按钮。方法二:在表单设计环境下,选择“表单”菜单中的“执行表单”命令,或单击标准工具栏上的“运行”命令。方法三:选择“程序”菜单中的“运行”命令,打开“运行”对话框,然后在对话框中指定要运行的表单文件并单击“运行”按钮。方法四:在命令窗口或需要在与事件相关联的代码、方法程序代码中使用命令:DOFORM表单文件名[NAME变量名]WITH实参1[,实参2]……[LINKED][NOSHOW][TO内存变量]二、基本知识2、保存表单存盘文件名为.SCX、.SCT,二、基本知识关于带参数调用表单的说明:(1)如果包含NAME子句,系统将建立指定名称的变量,并使它指向表单对象;否则,系统建立与表单文件同名的变量指向表单对象。(2)如果包含WITH子句,那么在表单运行引发Init事件时,系统会将各实参的值传递给该事件代码PARAMETERS或LPARAMETERS子句中的各形参。(3)如果包含LINKED关键字,表单对象将随指向它的变量的清除而关闭(释放);否则,即使变量已经清除,表单对象依然存在。但不管有没有LINKED关键字,指向表单对象的变量并不会随表单的关闭而清除,此时,该变量的取值为.NULL.。(4)一般情况下,运行表单时,在产生表单对象后,将调用表单对象的SHOW方法显示表单。如果包含NOSHOW关键字,表单运行时将不显示,直至表单对象的VISIBLE属性被设置为.T.,或调用了SHOW方法。(5)[TO内存变量]部分指调用表单,表单执行后的返回值赋给指定的内存变量。此时要求在被调用表单的Unload事件中的一个Return语句。表单运行后,可以单击标准工具栏上的“修改表单”按钮,切换到表单设计器环境,使表单进入设计方式。例8.1、8.2(教材P241)二、基本知识关于带参数调用表单的说明:(1)如果包含NA二、基本知识(二)表单中对象的基本操作1、添加对象的方法先在表单控件工具栏中选定控件;然后在表单或容器拖动,调整到指定大小。说明:(1)如果是容器内添加,先通过单击右键,在快捷菜单中选择“编辑”进入编辑状态。(2)如果同时要添加多个同类对象,可先单击工具栏中的“锁定”功能。文本框选项按钮组微调控件页框形状生成器锁定标签命令按钮组列表框计时器线条超级连接查看类命令按钮组合框图象ActiveX绑定控件分隔符选定对象编辑框复选框表格ActiveX控件容器命令锁基本容器控件二、基本知识(二)表单中对象的基本操作1、添加对象的方法二、基本知识2、对象布局的方法选定多个对象:按住shift,再单击要选择的对象移动对象:按光标移动键,也可用鼠标拖动,还可通过属性设定。删除对象:先选定,再按DEL或用快捷菜单。改变对象大小:直接对其“操作点”进行拖放操作。要调整多个对象的布局,先选定多个对象,再用“布局”工具栏来调整。左对齐右对齐上对齐下对齐垂直居中对齐水平居中对齐相同宽度相同高度相同大小水平居中垂直居中左对齐左对齐二、基本知识2、对象布局的方法选定多个对象:按住shif二、基本知识3、对象属性设置方法直接操作法:对象位置、大小等属性可通过拖动对象改变属性。属性窗口法:可打开属性窗口设置属性。程序代码法:通过程序代码设置属性。打开属性窗口的方法:(1)选定对象,单击右键,在弹出的快捷菜单中选“属性”菜单项。(2)选定对象,单击“属性”工具或菜单。表达式生成器按钮取消按钮确定按钮属性选择框将两表设置为一对多关系父表别名设置属性的方法:在“编辑框”中输入或选择属性值,按回车或单击“确定”按钮。二、基本知识3、对象属性设置方法直接操作法:对象位置、大二、基本知识4、设置事件代码打开属性窗口的方法:(1)选定对象,单击右键,在弹出的快捷菜单中选“代码”菜单项。(2)双击对象。设置事件代码必须注意:(1)对什么对象实施什么事件,然后要执行什么代码。对象事件代码窗口二、基本知识4、设置事件代码打开属性窗口的方法:设置事件三、课堂实战
图书管理系统的登录界面如下,利用表单创建的方法创建登录表单,并实现退出的功能。三、课堂实战图书管理系统的登录界面如下,利用表单创建四、归纳与延伸本次课小结
1、表单是VFP中软件界面的重要组成部分,要掌握其各种创建方法。
2、一个空表单是没有任何意义的,必须添加相关的对象组成一个完整的界面。
3、界面上的对象要布局合理,界面要美观。
4、两个按扭怎么区别呢?显然要设置他们的属性值。
5、延伸:表单作为软件界面,每个表单之间的关系如何呢?延伸:表单作为软件界面,每个表单之间的关系如何传递呢?
四、归纳与延伸本次课小结
1、表单是VFP中软件界面的重要组五、课后练习,探索新问题1、
设计一个表单,如图,要求如下:
添加一个文本框,字体大小设为22;添加五个标签,分别将标题设为图中所示的文字;分别添加16个命令按钮(可通过复制功能操作),分别将其标题设为图中所示的文字;添加如图所示的线条;各对象按图中所示的格式对对齐;设置表单的标题为“显示信息”;分别设置各命令按钮的事件代码,要求单击命令按钮可控制文本框内文字显示格式的功能。五、课后练习,探索新问题1、设计一个表单,如图,要求如下:五、课后练习,探索新问题2、用表单向导完成下列表单。
五、课后练习,探索新问题2、用表单向导完成下列表单。课前回顾旧课复习
1、表单创建的三种方法
表单设计器法——根据用户需要添加对象
向导法——按特定的步骤通过回答问题来设计表单
快速表单法——先进入表单设计器,再用菜单,选择问题
2、对象的基本操作
——移动、复制、删除、布局、属性设置、代码窗口
3、计时器控件
作用——控制每隔一定时间运行某代码,用于“变化”的设计
特点——设计时可见,运行时不可见
常用属性——Interval,用于间隔时间,单位:毫秒
常用事件——timer,常将代码放入该事件中。
课前回顾旧课复习
1、表单创建的三种方法
表单设计器法——根一、提出问题3(演示效果三)
一个表单的形状可以被定制吗?表单作为界面能添加菜单功能吗?表单有哪些重要的事件呢?一、提出问题3(演示效果三)一个表单的形状可以被定制二、基本知识属性说明默认值AlwaysOnTop控制表单是否总是处在其他打开窗口之上“假”(.F.)AutoCenter控制表单初始化时是否让表单自动地在VisualFoxPro6.0主窗口中居中“假”(.F.)Backcolor决定表单窗口的颜色192,192,192BorderStyle决定表单的边框样式:0—无边框;1—单线边框;2—固定对话框;3—可调边框3Caption指定表单标题栏显示文本Form1Closable控制用户是否能通过双击“关闭”框来关闭表单“真”
(.T.)DataSession控制表单或表单集里的表是否能在可全局访问的工作区中打开(值为1),还是仅能在表单或表单集所有工作区内打开(值为2)1MaxButton控制表单是否具有最大化按钮“真”
(.T.)MinButton控制表单是否具有最小化按钮“真”
(.T.)Movable控制表单是否能够移动“真”
(.T.)(一)表单常见属性(1)二、基本知识属性说明默认值AlwaysOnT二、基本知识Scollbars控制表单所具有的滚动条类型。可取值为:0(无)、1(水平)、2(垂直)、3(既水平又垂直)0—无Titlebar控制标题栏是否显示在表单的顶部1—打开ShowWindow控制表单是否在屏幕中,悬浮在顶层表单中或作为顶层表单出现0—在屏幕中WindowState控制表单运行时是否最小化、最大化还是正常状态0—普通Visible控制表单是否显示还是隐藏“真”
(.T.)WindowsType控制表单是否为非模式表单还是为模式表单,用户在访问应用程序用户界面中任何其他单元前必须关闭这个表单0—无模式Icon为表单指定一个图标无Name指定在代码中用以引用表单的名称Form1ScaleMode控制对象的尺寸和位置属性的度量单位是Foxels还是Pixels。由“选项”对话框中的设置决定由“选项”对话框中的设置决定(一)表单常见属性(2)二、基本知识Scollbars控制表单所具有的滚动条类型。可二、基本知识(一)表单常见属性(3)(1)name、caption和文件名的区别
name——表单对象名
caption——表单标题名
(2)Visable与Enabled的区别
Visable——可见与否
Enabled——可用与否
(3)几个表单控件按钮
Closeable、MaxButton、MinButton、Movable
(4)背景色、背景图
backcolor、picture
(5)边线
BorderStyle二、基本知识(一)表单常见属性(3)(1)name、capt二、基本知识(二)表单属性应用1、顶层表单、子表单、浮动表单的设置
(1)顶层表单
概念:能作为一个单独任务显示在任务栏中,可游离于VFP系统之外。
设置方法:将Showwindows设为“作为顶层表单”
(2)子表单
概念:用为VFP窗口内的一个表单或作为顶层表单内的表单
设置方法:
作为VFP内的子表单:Showwindows设为“在屏幕中”
作为顶层表单内的子表单:Showwindows设为“在顶层表单中”
(3)浮动表单
概念:窗口可游离于VFP窗口之外
设置方法:将DeskTop属性设为:.T.,即可以浮动
二、基本知识(二)表单属性应用1、顶层表单、子表单、浮动表单二、基本知识(二)表单属性应用2、模式表单
概念:只有当本表单处在非活动时,其他表单才可以成为活动表单。
即只有本表单退出时,光标才可能到别的表单上。
设置方法:windowtype设置为“模式”二、基本知识(二)表单属性应用2、模式表单
概念:只有当本表二、基本知识(三)表单常用事件Load事件:进入事件在创建表单或者表单集之前将会发生这个事件。这个事件的命令代码常常做一些初始化的工作。Init事件:初始化事件Destroy事件:表单消失事件Unload事件:在关闭表单或者表单集时,将会发生这个事件。这个事件是在释放表或表单集之前发生的最后一个事件。在Destroy事件发生而且所有包含的对象被释放后,才会发生Unload事件。QueryUnload:表单卸载之前发生。Release 事件:退出事件Gotfocus事件:得到焦点事件Lostfocus事件:失去焦点事件Resize事件:当调整对象的大小时发生这个事件。Resize事件可以由交互方式触发。在重新设置对象的Width和Heigh属性时都会触发这个事件。Activate事件:当激活一个对象时,将会发生Activate事件。Deactivate事件:当表单不再处于激活状态时,将会发生Deactivate事件。1、常用事件二、基本知识(三)表单常用事件Load事件:进入事件在创建表二、基本知识2、常用事件发生的顺序先进行试验结论:进入时:退出时:二、基本知识2、常用事件发生的顺序先进行试验结论:进入时:退二、基本知识2、常用事件发生的顺序例:设计一个确认表单退出的表单代码如下:二、基本知识2、常用事件发生的顺序例:设计一个确认表单退出的二、基本知识(四)表单常用方法Release方法:释放(清除)表单;Refresh方法:重新绘制表单,并刷新它的所有值;Show方法:显示表单,该方法将表单的Visible属性设为.T.,并使表单成为活动对象;Hide方法:隐藏表单,该方法将表单的Visible属性设为.F.;Setfocus方法:让表单成为活动表单。1、常用方法二、基本知识(四)表单常用方法Release方法:释放(清除三、课堂学做主表单为顶层表单、子表单1是顶层表单中的子表单、子表单2是屏幕子表单、浮动表单
三、课堂学做主表单为顶层表单、子表单1是顶层表单中的子表单、三、课堂学做设计下面表单三、课堂学做设计下面表单四、归纳与延伸1、表单是界面设计中最重要的一个容器对象,因此其属性的设置要好好掌握。2、表单的重要事件是界面启动或关闭时要触发的,可以利用他们执行系统的一些重要功能。3、表单的类型决定是否可以加载菜单功能,是否可以脱离VFP窗口。本次课小结
延伸:表单启动时和关闭时触发的相应事件,那么这些事件代码通常为应用程序完成什么功能呢?四、归纳与延伸1、表单是界面设计中最重要的一个容器对象,因此五、课外实践完成浮动表单的设计。五、课外实践完成浮动表单的设计。五、课外实践书面练习:教材264五、课外实践书面练习:教材264旧课复习
1、表单常用属性
——顶层表单、子表单、浮动表单、模式表单
showwindow属性、Desktop属性、WindowsType
2、表单常用事件
Load、Init、Activate、Click、Destroy、Unload
——注意事件的发生顺序
3、表单的常用方法
hide、Gotfocus
——隐藏、得到焦点
课前回顾旧课复习
1、表单常用属性
——顶层表单、子表单、浮动表单、一、提出问题4(演示效果四)
表单作为界面,不仅要显示对象,还涉及对象的数据绑定,那么数据的环境该如何设置呢?表单的属性和方法是有限的,当这些属性和方法不能满足我们的需要的时候可不可以添加新的属性和方法呢?当我们把一些对象的属性和方法设置好,下次能重复利用吗?一、提出问题4(演示效果四)表单作为界面,不仅要显示二、基本知识(一)表单集1、概念:将多个表单组成的集合称为表单集(Formset)。2、表单集创建:进入表单设计器,然后使用菜单“创建表单集”。利用菜单还可以添加表单。3、表单集的表示方法:相对法:thisformset.form1、……4、表单集的常用属性:
Visible
5、表单集的常用方法:
Hide——隐藏
show——显示二、基本知识(一)表单集1、概念:将多个表单组成的集合称为表(二)自定义属性1、概念:可以给对象自定义属性2、定义方法:从“表单”菜单中选择“新建属性”功能3、作用:一些对象需要保存的中间数据,方便信息交换。4、例:设计一个表单,统计用户单击鼠标的次数二、基本知识(二)自定义属性1、概念:可以给对象自定义属性二、基本知识(三)自定义方法程序1、概念:可以给对象自定义方法2、定义方法:从“表单”菜单中选择“新建方法程序”功能3、作用:一些对象公共的子程序,往往将子程序定义成一个方法程序(也可带参数)。二、基本知识(三)自定义方法程序1、概念:可以给对象自定义方法二、基本知二、基本知识(四)添加自定义对象1、概念:可以使用类给表单添加自定义对象2、添加方法:(1)定义新类;(2)添加类库;(3)添加对象3、作用:一些对象公共的子程序,往往将子程序定义成一个方法程序(也可带参数)。4、例:设计一个“退出”按扭类,并添加到表单上.二、基本知识(四)添加自定义对象1、概念:可以使用类给表单添8-3表单管理(2)(五)设置数据环境1、概念:数据环境是指与表单相关的表2、打开“数据库环境设计器”:(1)菜单法;(2)快捷菜单法、3、“数据库环境设计器”的操作:添加表、移去表、表间关系4、数据绑定方法:①通过控件的属性完成数据绑定可以通过属性窗口或代码为控件设置数据源。一般来说,先把需绑定的数据源加入到数据环境中,再打开控件的属性窗口,设置其ControlSource属性。②通过控件生成器进行数据绑定将数据源加入到数据环境后,通过控件的生成器很容易进行数据绑定。③通过拖放直接添加绑定型控件VisualFoxPro提供了更好的数据绑定方法,允许用户从“数据环境设计器”窗口、“项目管理器窗口”或“数据库设计器”窗口中直接将字段、表或视图拖入表单,系统将产相应的控件并与字段绑定。8-3表单管理(2)(五)设置数据环境1、概念:数据环境二、基本知识例:不用向导设计下列界面及功能二、基本知识例:不用向导设计下列界面及功能三、课堂实战例:在一个表单集中有两个表单,在表单集中设置属性,并在不同表单中进行控制。三、课堂实战例:在一个表单集中有两个表单,在表单集中设置属性三、课堂实战2、自定义一个方法,求三个数的最大公约数,并求鼠标点击“计算”按扭的次数。三、课堂实战2、自定义一个方法,求三个数的最大公约数,并求鼠本次课小结
1、自定义属性
——目的:中间数据存放,方法:菜单中“自定义属性”
2、自定义方法程序
——目的:存放公共程序,方法:菜单中的“自定义方法程序”
3、自定义对象
——使用“类”
4、数据环境
——添加方法、三种绑定方法
四、归纳与延伸延伸:数据环境中的数据能修改吗?本次课小结
1、自定义属性
——目的:中间数据存放,方法:菜五、课外练习1、完成密码修改表单。五、课外练习1、完成密码修改表单。五、课外练习书面练习:教材2642、完成登录表单的“确定”按扭功能,要求验证的次数不超过3次。五、课外练习书面练习:教材2642、完成登录表单的“确定”按态度决定一切细节影响成败态度决定一切单元15表单技术【主要内容】面向对象程序设计和概念创建表单表单管理【目的要求】掌握面向对象程序设计的基本概念、基本思想、方法掌握表单的创建、设置方法【课时安排】
共8课时单元15表单技术【主要内容】【目的要求】【课时安排】一、提出问题1(演示效果一)
软件的使用界面是非常重要的。在图书管理系统中用到了很多的界面,这些界面在VFP设计中用到了哪些技术呢?这些技术和传统的过程化的设计有什么区别呢?
一、提出问题1(演示效果一)软件的使用界面是非二、基本知识(一)对象1.什么是对象:所谓对象(Object)可以是任何的具体实体。2.对象的分类:对象分为容器对象和简单对象。3.对象的名称:每个对象都有一个名字,称为对象名。4.对象的引用:绝对引用:完整的容器层次描述的引用相对引用:相对当前对象的引用方法。相对引用的关键字关键字引用关系Activecontrol当前活动表单中具有焦点的控件Activeform当前活动表单Activepage当前活动表单中的活动页This该对象本身Thisform包含该对象的表单Thisformset包含该对象的表单集Parent包含该对象的直接容器二、基本知识(一)对象1.什么是对象:所谓对象(Objec二、基本知识(二)对象的属性1.什么是属性:对象的属性(Properity)是指对象的一项描述内容,用于描述对象的外观和行为的特征2.属性的名称:每个属性都有一个名字,称为属性名。3.属性的表示:对象名.属性名=属性值常用对象的属性:作用属性名意义作用属性名意义表示大小Height高字体情况Fontsize字体大小Width宽Fontname字体名表示位置Top离上面距离FontBold是否加粗Left离左边距离其他Caption标题文字颜色Forecolor前景色Name对象名Backcolor背景色Enabled是否可用DisableColor不可用时色Value当前值思考:如何进行属性的设置?二、基本知识(二)对象的属性1.什么是属性:对象的属性(P二、基本知识(三)对象的事件1.什么是事件:事件(event)是由VisualFoxPro6.0预先定义好的、能被对象识别和响应的动作或状态.2.事件的分类及常用事件:见下表类别事件名意义类别事件名意义鼠标事件Click单击表单事件Load创建表单Dblclick双击Unload关闭表单MouseMove移动鼠标Resize改变大小RightClick右键单击Activate激活表单键盘事件KeyPress按键盘键Deactivate非激活状态控制焦点事件Gotfocus得到焦点Init初始化Lostfocus失去焦点数据环境事件Beforeopentables表打开前When得到焦点前Afterclosetables表关闭后Valid失去焦点前其他事件Times计时器改变控件内容事件Interchange交互改变Error出错时思考:能否建立新的事件?二、基本知识(三)对象的事件1.什么是事件:事件(even二、基本知识(四)对象的方法1.什么是方法:对象的方法(Method)是指与对象相关的程序.2.方法的名称:VFP规定了一些方法,用户也可为某对象定义方法.常用对象的的方法如下:方法名说明Release关闭、退出Refresh重新显示表单和控制并刷新表单中的所有值AddObject在运行时向容器对象中添加对象Clear清除组合框或列表框控件的内容Show显示表单Requery重新查询3.方法的使用:对象名.方法名如:关闭当前表单用:thisform.release二、基本知识(四)对象的方法1.什么是方法:对象的方法(M二、基本知识(五)类1.什么是类:具有相同属性的对象组成的集合称为类.2.子类:类中具有特殊属性的对象的集合称子类.
子类具有继承性、封装性和多态性。3.类的分层结构:容器类:可以包含其他对象。控件类:不能包含其他对象。4.VFP的基类:VFP系统已提供的可直接使用的类。VFP能使用的基类见教材P226二、基本知识(五)类1.什么是类:具有相同属性的对象组成的文本框选项按钮组微调控件页框形状生成器锁定标签命令按钮组列表框计时器线条超级连接查看类命令按钮组合框图象ActiveX绑定控件分隔符选定对象编辑框复选框表格ActiveX控件容器命令锁基本容器控件二、基本知识(六)控件控件(control)是放在一个表单上用以显示数据、执行操作或使表单更易阅读的一种图形对象,如文本框、矩形或命令按钮等。常用控件由VisualFoxPro6.0的基类提供,共21个。文本框选项按钮组微调控件页框形状生成器锁定标签命令按钮组列表二、基本知识(七)可视化编程步骤1.建立应用程序的用户界面,主要是建立表单;2.在表单中添加所需的各种对象,一般由控件创立;3.设置各对象(表单及控件)的属性;4.编写方法及事件过程代码;5.调试、运行应用程序;二、基本知识(七)可视化编程步骤1.建立应用程序的用户界面三、课堂实战建立如下图所示的表单,表单上有一个形状、一个标签、三个命令按钮,单击按钮“圆”,则显示红色的圆,单击按钮“方框”,则显示白色的方框,单击按钮“退出”,则退出该表单。请注意操作步骤、操作方法。三、课堂实战建立如下图所示的表单,表单上有一个形状、一个标签本次课小结
软件设计中的界面设计:其特点是什么?
面向对象技术的关键术语:对象、属性、事件和方法。
类的概念以及特点,类的划分。
面向对象的设计步骤。延伸:面向对象的设计和面向过程的设计有什么区别?各有什么特点?四、归纳与延伸本次课小结
软件设计中的界面设计:其特点是什五、课外探索及作业上机练习:将课堂实例进行改进,效果如下:要求:在课外独立完成,完成后通过电子邮件发送给老师。书面练习:教材P232(1、8、9题)五、课外探索及作业上机练习:将课堂实例进行改进,效果如下:书旧课复习
如何进行上述各步?课前回顾(提问)可视化编程步骤1.建立应用程序的用户界面,主要是建立表单;2.在表单中添加所需的各种对象,一般由控件创立;3.设置各对象(表单及控件)的属性;4.编写方法及事件过程代码;5.调试、运行应用程序;6.编译、制作程序发布。旧课复习
如何进行上述各步?课前回顾(提问)可视化编程步骤一、提出问题2(演示效果二)VFP中界面的设计是由表单完成的。那么表单如何创建?表单中的对象如何布局呢?表单如何美化呢?一、提出问题2(演示效果二)VFP中界面的设计是由二、基本知识(一)表单建立、修改和运行方法一:使用表单设计器。进入表单设计器的方法:命令法:CREATEFORM表单文件名工具法:使用“新建”工具菜单法:使用“新建”菜单注意:可在“选项”中设置表单的默认大小。方法二:使用表单向导。进入表单向导的方法:工具法:使用“新建”工具菜单法:使用“新建”菜单在项目管理器中的向导方法三:使用快速表单。先在项目管理器中选定表单,然后单击“新建”按钮,将出现“新建表单”对话框,单击“新建表单”按钮,打开表单设计器,此时,在主菜单中将会有一个“表单”选项,打开这个菜单,选择快速表单,就可以启动快速表单了。1、建立表单二、基本知识(一)表单建立、修改和运行方法一:使用表单设二、基本知识方法一:使用表单设计器。进入表单设计器的方法:命令法:CREATEFORM表单文件名工具法:使用“新建”工具菜单法:使用“新建”菜单表单设计器的结构1、选择“文档”选项卡2、选择“表单”3、单击【新建】4、进入新建表单程序,弹出“新建表单”对话框单击“表单设计器”窗口新表单在新表单(Form1)上可以可视化地添加控件并进行属性、方法程序设计。二、基本知识方法一:使用表单设计器。命令法:CREATE二、基本知识表单设计器的工具栏设置Tab次序数据环境二、基本知识表单设计器的工具栏设置Tab次序数据环境方法二:使用表单向导。进入表单向导的方法:工具法:使用“新建”工具菜单法:使用“新建”菜单在项目管理器中的向导二、基本知识为单个表创建操作数据的表单为两个相关表创建数据输入的表单,在表单的表格中显示子表的字段.向导步骤:1.启动表单向导2.从父表中选定字段3.从子表中选定字段4.建立表之间的关系5.选择表单样式6.完成方法二:使用表单向导。工具法:使用“新建”工具二、基本知方法三:使用快速表单。先在项目管理器中选定表单,然后单击“新建”按钮,将出现“新建表单”对话框,单击“新建表单”按钮,打开表单设计器,此时,在主菜单中将会有一个“表单”选项,打开这个菜单,选择”快速表单”,就可以启动快速表单了。二、基本知识方法三:使用快速表单。二、基本知识二、基本知识2、保存表单存盘文件名为.SCX、.SCT,也可存为“类”。3、修改表单打开表单,进入表单设计器。用命令:MODIFYFORM表单文件名也可进入表单设计器。4、运行表单方法一:在项目管理器窗口中,选择要运行的表单,然后单击窗口里的“运行”按钮。方法二:在表单设计环境下,选择“表单”菜单中的“执行表单”命令,或单击标准工具栏上的“运行”命令。方法三:选择“程序”菜单中的“运行”命令,打开“运行”对话框,然后在对话框中指定要运行的表单文件并单击“运行”按钮。方法四:在命令窗口或需要在与事件相关联的代码、方法程序代码中使用命令:DOFORM表单文件名[NAME变量名]WITH实参1[,实参2]……[LINKED][NOSHOW][TO内存变量]二、基本知识2、保存表单存盘文件名为.SCX、.SCT,二、基本知识关于带参数调用表单的说明:(1)如果包含NAME子句,系统将建立指定名称的变量,并使它指向表单对象;否则,系统建立与表单文件同名的变量指向表单对象。(2)如果包含WITH子句,那么在表单运行引发Init事件时,系统会将各实参的值传递给该事件代码PARAMETERS或LPARAMETERS子句中的各形参。(3)如果包含LINKED关键字,表单对象将随指向它的变量的清除而关闭(释放);否则,即使变量已经清除,表单对象依然存在。但不管有没有LINKED关键字,指向表单对象的变量并不会随表单的关闭而清除,此时,该变量的取值为.NULL.。(4)一般情况下,运行表单时,在产生表单对象后,将调用表单对象的SHOW方法显示表单。如果包含NOSHOW关键字,表单运行时将不显示,直至表单对象的VISIBLE属性被设置为.T.,或调用了SHOW方法。(5)[TO内存变量]部分指调用表单,表单执行后的返回值赋给指定的内存变量。此时要求在被调用表单的Unload事件中的一个Return语句。表单运行后,可以单击标准工具栏上的“修改表单”按钮,切换到表单设计器环境,使表单进入设计方式。例8.1、8.2(教材P241)二、基本知识关于带参数调用表单的说明:(1)如果包含NA二、基本知识(二)表单中对象的基本操作1、添加对象的方法先在表单控件工具栏中选定控件;然后在表单或容器拖动,调整到指定大小。说明:(1)如果是容器内添加,先通过单击右键,在快捷菜单中选择“编辑”进入编辑状态。(2)如果同时要添加多个同类对象,可先单击工具栏中的“锁定”功能。文本框选项按钮组微调控件页框形状生成器锁定标签命令按钮组列表框计时器线条超级连接查看类命令按钮组合框图象ActiveX绑定控件分隔符选定对象编辑框复选框表格ActiveX控件容器命令锁基本容器控件二、基本知识(二)表单中对象的基本操作1、添加对象的方法二、基本知识2、对象布局的方法选定多个对象:按住shift,再单击要选择的对象移动对象:按光标移动键,也可用鼠标拖动,还可通过属性设定。删除对象:先选定,再按DEL或用快捷菜单。改变对象大小:直接对其“操作点”进行拖放操作。要调整多个对象的布局,先选定多个对象,再用“布局”工具栏来调整。左对齐右对齐上对齐下对齐垂直居中对齐水平居中对齐相同宽度相同高度相同大小水平居中垂直居中左对齐左对齐二、基本知识2、对象布局的方法选定多个对象:按住shif二、基本知识3、对象属性设置方法直接操作法:对象位置、大小等属性可通过拖动对象改变属性。属性窗口法:可打开属性窗口设置属性。程序代码法:通过程序代码设置属性。打开属性窗口的方法:(1)选定对象,单击右键,在弹出的快捷菜单中选“属性”菜单项。(2)选定对象,单击“属性”工具或菜单。表达式生成器按钮取消按钮确定按钮属性选择框将两表设置为一对多关系父表别名设置属性的方法:在“编辑框”中输入或选择属性值,按回车或单击“确定”按钮。二、基本知识3、对象属性设置方法直接操作法:对象位置、大二、基本知识4、设置事件代码打开属性窗口的方法:(1)选定对象,单击右键,在弹出的快捷菜单中选“代码”菜单项。(2)双击对象。设置事件代码必须注意:(1)对什么对象实施什么事件,然后要执行什么代码。对象事件代码窗口二、基本知识4、设置事件代码打开属性窗口的方法:设置事件三、课堂实战
图书管理系统的登录界面如下,利用表单创建的方法创建登录表单,并实现退出的功能。三、课堂实战图书管理系统的登录界面如下,利用表单创建四、归纳与延伸本次课小结
1、表单是VFP中软件界面的重要组成部分,要掌握其各种创建方法。
2、一个空表单是没有任何意义的,必须添加相关的对象组成一个完整的界面。
3、界面上的对象要布局合理,界面要美观。
4、两个按扭怎么区别呢?显然要设置他们的属性值。
5、延伸:表单作为软件界面,每个表单之间的关系如何呢?延伸:表单作为软件界面,每个表单之间的关系如何传递呢?
四、归纳与延伸本次课小结
1、表单是VFP中软件界面的重要组五、课后练习,探索新问题1、
设计一个表单,如图,要求如下:
添加一个文本框,字体大小设为22;添加五个标签,分别将标题设为图中所示的文字;分别添加16个命令按钮(可通过复制功能操作),分别将其标题设为图中所示的文字;添加如图所示的线条;各对象按图中所示的格式对对齐;设置表单的标题为“显示信息”;分别设置各命令按钮的事件代码,要求单击命令按钮可控制文本框内文字显示格式的功能。五、课后练习,探索新问题1、设计一个表单,如图,要求如下:五、课后练习,探索新问题2、用表单向导完成下列表单。
五、课后练习,探索新问题2、用表单向导完成下列表单。课前回顾旧课复习
1、表单创建的三种方法
表单设计器法——根据用户需要添加对象
向导法——按特定的步骤通过回答问题来设计表单
快速表单法——先进入表单设计器,再用菜单,选择问题
2、对象的基本操作
——移动、复制、删除、布局、属性设置、代码窗口
3、计时器控件
作用——控制每隔一定时间运行某代码,用于“变化”的设计
特点——设计时可见,运行时不可见
常用属性——Interval,用于间隔时间,单位:毫秒
常用事件——timer,常将代码放入该事件中。
课前回顾旧课复习
1、表单创建的三种方法
表单设计器法——根一、提出问题3(演示效果三)
一个表单的形状可以被定制吗?表单作为界面能添加菜单功能吗?表单有哪些重要的事件呢?一、提出问题3(演示效果三)一个表单的形状可以被定制二、基本知识属性说明默认值AlwaysOnTop控制表单是否总是处在其他打开窗口之上“假”(.F.)AutoCenter控制表单初始化时是否让表单自动地在VisualFoxPro6.0主窗口中居中“假”(.F.)Backcolor决定表单窗口的颜色192,192,192BorderStyle决定表单的边框样式:0—无边框;1—单线边框;2—固定对话框;3—可调边框3Caption指定表单标题栏显示文本Form1Closable控制用户是否能通过双击“关闭”框来关闭表单“真”
(.T.)DataSession控制表单或表单集里的表是否能在可全局访问的工作区中打开(值为1),还是仅能在表单或表单集所有工作区内打开(值为2)1MaxButton控制表单是否具有最大化按钮“真”
(.T.)MinButton控制表单是否具有最小化按钮“真”
(.T.)Movable控制表单是否能够移动“真”
(.T.)(一)表单常见属性(1)二、基本知识属性说明默认值AlwaysOnT二、基本知识Scollbars控制表单所具有的滚动条类型。可取值为:0(无)、1(水平)、2(垂直)、3(既水平又垂直)0—无Titlebar控制标题栏是否显示在表单的顶部1—打开ShowWindow控制表单是否在屏幕中,悬浮在顶层表单中或作为顶层表单出现0—在屏幕中WindowState控制表单运行时是否最小化、最大化还是正常状态0—普通Visible控制表单是否显示还是隐藏“真”
(.T.)WindowsType控制表单是否为非模式表单还是为模式表单,用户在访问应用程序用户界面中任何其他单元前必须关闭这个表单0—无模式Icon为表单指定一个图标无Name指定在代码中用以引用表单的名称Form1ScaleMode控制对象的尺寸和位置属性的度量单位是Foxels还是Pixels。由“选项”对话框中的设置决定由“选项”对话框中的设置决定(一)表单常见属性(2)二、基本知识Scollbars控制表单所具有的滚动条类型。可二、基本知识(一)表单常见属性(3)(1)name、caption和文件名的区别
name——表单对象名
caption——表单标题名
(2)Visable与Enabled的区别
Visable——可见与否
Enabled——可用与否
(3)几个表单控件按钮
Closeable、MaxButton、MinButton、Movable
(4)背景色、背景图
backcolor、picture
(5)边线
BorderStyle二、基本知识(一)表单常见属性(3)(1)name、capt二、基本知识(二)表单属性应用1、顶层表单、子表单、浮动表单的设置
(1)顶层表单
概念:能作为一个单独任务显示在任务栏中,可游离于VFP系统之外。
设置方法:将Showwindows设为“作为顶层表单”
(2)子表单
概念:用为VFP窗口内的一个表单或作为顶层表单内的表单
设置方法:
作为VFP内的子表单:Showwindows设为“在屏幕中”
作为顶层表单内的子表单:Showwindows设为“在顶层表单中”
(3)浮动表单
概念:窗口可游离于VFP窗口之外
设置方法:将DeskTop属性设为:.T.,即可以浮动
二、基本知识(二)表单属性应用1、顶层表单、子表单、浮动表单二、基本知识(二)表单属性应用2、模式表单
概念:只有当本表单处在非活动时,其他表单才可以成为活动表单。
即只有本表单退出时,光标才可能到别的表单上。
设置方法:windowtype设置为“模式”二、基本知识(二)表单属性应用2、模式表单
概念:只有当本表二、基本知识(三)表单常用事件Load事件:进入事件在创建表单或者表单集之前将会发生这个事件。这个事件的命令代码常常做一些初始化的工作。Init事件:初始化事件Destroy事件:表单消失事件Unload事件:在关闭表单或者表单集时,将会发生这个事件。这个事件是在释放表或表单集之前发生的最后一个事件。在Destroy事件发生而且所有包含的对象被释放后,才会发生Unload事件。QueryUnload:表单卸载之前发生。Release 事件:退出事件Gotfocus事件:得到焦点事件Lostfocus事件:失去焦点事件Resize事件:当调整对象的大小时发生这个事件。Resize事件可以由交互方式触发。在重新设置对象的Width和Heigh属性时都会触发这个事件。Activate事件:当激活一个对象时,将会发生Activate事件。Deactivate事件:当表单不再处于激活状态时,将会发生Deactivate事件。1、常用事件二、基本知识(三)表单常用事件Load事件:进入事件在创建表二、基本知识2、常用事件发生的顺序先进行试验结论:进入时:退出时:二、基本知识2、常用事件发生的顺序先进行试验结论:进入时:退二、基本知识2、常用事件发生的顺序例:设计一个确认表单退出的表单代码如下:二、基本知识2、常用事件发生的顺序例:设计一个确认表单退出的二、基本知识(四)表单常用方法Release方法:释放(清除)表单;Refresh方法:重新绘制表单,并刷新它的所有值;Show方法:显示表单,该方法将表单的Visible属性设为.T.,并使表单成为活动对象;Hide方法:隐藏表单,该方法将表单的Visible属性设为.F.;Setfocus方法:让表单成为活动表单。1、常用方法二、基本知识(四)表单常用方法Release方法:释放(清除三、课堂
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年度高新技术产业市场推广合同2篇
- 2024年专科门诊医疗服务承揽合同书3篇
- 2024年度企业营销策划服务合同
- 2024年度环保设备维护及升级改造合同
- 2024窗户安装合同范本
- 2024年农民合作社入社加盟权益保障协议3篇
- 2024年度货物供应框架合同标的:电子产品供应链管理3篇
- 创新创业课程设计原则
- 定时计时器课程设计
- 2024年度兼职劳动协议版B版
- 仓储管理员职业技能操作比赛项目和要求
- 计算机应用基础-终结性考试试题国开要求
- 超声设备维修与保养教学课件
- 四年级上册英语说课稿-Unit 12 Peter can jump high. 课时3 湘少版(三起)
- 小区停车场投诉方案范本
- 保安部骨干选拔程序
- 医院出入口安检工作记录表范本
- 《养成良好的学习习惯》主题班会教学反思3篇
- 小学发生一起疑似水痘暴发疫情的调查处置报告
- 园林制图基本制图标准
- 马工程2019教育学原理新版答案
评论
0/150
提交评论