vfp初级教程.docx
《vfp初级教程.docx》由会员分享,可在线阅读,更多相关《vfp初级教程.docx(26页珍藏版)》请在三一办公上搜索。
1、vfp初级教程第一课 开场白 很简单,只讲两个问题:一、项目管理器;二、数据库和表的区别。 一、在开发一个软件项目的过程中往往会产生大量的各种文件,有时开发者自己都不知道有些什么文件了,因此从VISUAL FOXPRO开始引入了项目管理器,以便更好地管理这些文件。项目管理器由两个文件组成,扩展名分别是“PJX”和“PJT”。 二、学过FOX的人都知道数据库是什么,就是有字段、记录的一个二维表,也就是那个DBF文件,可是到了VISUAL FOXPRO 3.0,这数据库就不叫数据库了,它干脆就叫“表”,英文叫“TABLE”。而数据库是包含有多个表的文件,扩展名是“DBC”,也就是数据库的库,引入D
2、BC文件的一个主要目的是为了对表能够很好地分类管理。 而不包含在数据库中的表,叫做自由表,其使用方法与原来的数据库基本相同。 第二课 见识一下面向对象的编程 我们先来编一个幸运7游戏机程序,也可以叫做一个游戏软件,亲身感受一下面向对象编程是怎么回事。也许您已经有了面向过程的编程经验,那么在这里您会感到面向对象编程真是一件很享受的事情。如果您没有面向过程的编程经验,那太好了,您永远都不会陷入一大堆复杂的代码中找不着北,而能在轻松之中便编出具有专业水准的程序。 言归正传,前面讲过编一个软件会产生很多文件,如果只是编一个简单的软件,也可能只有一个文件,但不管多少,我们首先要在硬盘上为这个软件建一个目
3、录,然后在编程的过程中,将产生的有关文件全部放在这个目录中以便于管理。 目录建好后启动FOXPRO 5.0,启动后将看到图1。 开始编软件之前先说明一下这是一个什么软件,它是一个类似赌博的游戏机,图2。 按下开始按钮后,上面的三个窗口就会出现三个随机数,如果其中有“7”则赢,否则为输。 现在开始正式编程,按第一课讲的首先要建一个项目管理器,建立的方法是调用菜单中的“文件”下的“新建”命令,或按工具栏上的“新建”按钮,接着会出现图3。 按新建文件,接着在下面的窗口中输入项目管理器的文件名: 这样就做好了文本框Text1,用来在软件中显示第一个随机数。如觉得位置不理想,可用鼠标按住它,将其移到合适
4、的位置,如感到大小不合适,可用鼠标按住文本框四周的8个黑点中的任一个,上下左右拉动来改变其大小。 接下来设置文本框的其它属性,如字体大小,用鼠标按“属性窗口”按钮,然后在属性窗口中点“布局”,再按上下滚动条找到“FontSize”属性,即“字体尺寸”属性,如图11。 按上面设置框的向下箭头,将字体设为48,如图12, 文本框变为如图13所示,显示的字体变大了。 另一个需要设置的属性是“水平对齐方式”,在布局中找到“Alignment”属性,在第一行,将其设为“2中间”,方法与设字体大小是差不多的,想必聪明的您不用我给图示也能做到了。 这样第一个文本框便设置好了,按同样方法做出第2、3个文本框,
5、如图14。这里要注意一点,在设置哪个文本框时,一定要选中所要设的对象,即能看到其周围有8个黑点,如没有,需用鼠标点它一下,今后设置其它的对象时也是一样。 下一步制做显示输、赢的文本标签,调出工具栏,按标签按钮方法做出标签,如图15。 ,按制做文本框类似的设置其标题,调出属性窗口,在布局中找到“Caption”属性,即“标题”属性,在设置框中输入“赢”,然后回车,结果如图16。 与文本框相同的方法设置字体大小为36,如图17。 接着将这个标签设为看不见,因为要赢了以后才把它显示出来,所以事先应是看不见的,方法是在布局中找到“Visible”属性,即“可见”属性,其隐含为“真”,即“T”,也就是能
6、看见,将其设为假,即“F”,如图18,那么程序一旦运行起来,它就看不见了,当然在设计程序时它还是看得见的。至于想知道赢了后怎样让它显示出来,那您接着往下看。 然后按同样方法制做“输”字,自然也要设为看不见,否则您就只输不赢了,做好后如图19。 接下来制做按钮,按下控件工具栏上的“命令按钮”,在表单上以制做文本框的同样方法做出第一个按钮,如图20, 然后设置其标题为“开始”,方法同设置标签的标题,设好后如图21。之后如法炮制做出“退出”按钮。 最后再给这个表单也设个标题,用鼠标点一下表单“Form1”的空白地方,不要点其中的控件,如文本框、按钮等,然后如前一样设置其“Caption”属性为“幸运
7、7游戏机”,做好后如图22。 到此为止,我们这个软件的界面就全部做好了。怎么样,不难吧? 下面要做的事情就是为按钮设置动作程序,也就是当按钮被按下这一事件发生后电脑要做些什么事,这就要为按钮的相应动作编一些代码,先来编“退出”按钮,因为它比较简单。 一个按钮,或者说一个对象,可以有很多动作,换句话说可以有很多事件发生在它身上,但对于已经使用的对象来说,可能只有某一个或几个动作有用。 对于按钮来说最常发生的事件就是被鼠标左键按动,我们这个软件中按钮所发生的事件也就是这个,对“退出”按钮来说,就是它在被按动后程序要退出,现在我们就来编完成这一任务的代码。 方法是:先用鼠标点一下“退出”按钮,使其被
8、选中,这样后面编的代码才是它的,否则就可能编到别的对象中去了,这样就达不到要求。 在属性窗口中选择“方法程序”,然后在其中找到“Click Event”,即“按动事件”,如图23。 双击“Click Event”,出现编程窗口,如图24,注意,其中的对象窗口中是“command2”,即退出按钮的名称,过程窗口中显示的是“Click”,即现在所编的程序是针对“按动”事件的。如感到属性窗口挡住了编程窗口,可将其关闭。 这里的程序只有一句话: thisform.release 意思是“本表单.释放”,也就是将这个表单关闭,这样整个软件也就运行结束了。程序写好后如图25,然后选择菜单上的“文件”下面的
9、“关闭”命令。 就这么简单?就这么简单! “退出”按钮编好后就要编“开始”按钮,这个按钮会稍微复杂一点,同样先按前面的方法进入程序窗口,但这次应是“Command1”的“Click”事件。代码如图26。 其中: if thisform.text1.value=7 .or. ; thisform.text2.value=7 .or. ; thisform.text3.value=7 是一条语句,由于一行写出来太长,不易读,故将其分为三行,除最后一行外,前面每行都以分号结尾,这样系统就知道把它们看做是一行来处理。另外“or”两边各有一个点,不能少。 程序中所有的命令、运算符号,如等号、分号、点号等
10、,都必须是半角字符。 每行语句后面,从“&”开始的文字是用于对程序进行解释和说明的,不会影响程序的运行,有也可,没有也可,但如果有的话,前面一定要以“&”开头,并与命令语句空开一格以上。 与“退出”按钮一样,“开始”按钮的程序写好后,关闭程序设计窗口,这样整个程序就编好了。 程序编好后,先按一下表单设计器窗口,再按菜单上“文件”下的“保存”命令,即将编好的内容保存到磁盘上,接着按菜单上“文件”下的“关闭”命令,这样整个软件就编完了。如果没有先按一下表单设计器,即没有将表单设计器的窗口激活,可能造成关闭了其它的窗口。表单设计关闭后可看到如图27情况。 这时先用鼠标点一下“xy7”表单,使其反白,
11、然后按项目管理器上的“运行(U)”,如果程序没有错的话,软件便能正常运行起来。看看您的手气怎样,能不能第一次就赢,我编好这个程序后第一次按下就出了“7”,手气真不错。 如果有错误,会出现类似图28的显示,这时按“取消”,然后按“退出”退出软件,如果“退出”按钮不起作用,则按窗口右上角的管理器中按修改进入表单设计器,查出错误的地方,改正即可。 按钮来关闭。之后在项目退出表单设计器后,按“文件”下的“退出”命令,便可退出FoxPro系统。如果没有打开过其它的项目管理器,下次启动FoxPro系统后,该项目管理器会自动打开,如没有打开,可按“文件”下的“打开”命令,或按钮,找到所要的目录和项目管理器文
12、件打开即可。有时打开可能看不到表单名,看到的是如图29所示的情况,这时只要按表单前面的“+”号将其变为“-”号,就可看到所有的表单了。 面向对象的编程很容易吧,希望您看了我们这一课后已有了充足的信心来学好VFP。有什么问题或对我们的课程有什么意见,给我Mail:)。 第三课 vfp的对象、属性、事件、方法 经过上一课我们已经对对象、属性、事件有了初步认识,这一课我们再做进一步讲解。 对象(object):就是我们软件中所看到表单、文本框、按钮、标签等等东西,一个软件的外观主要也就是由这些东西组成,那么我们要编软件就应该掌握各种对象的使用方法。 可放在表单内的对象,如按钮、文本框等也常常被叫作控
13、件,我们在后面的课程中也经常会用到这个词。 所谓面向对象的编程,就是我们在编程的过程中是看着这些东西来编程,而不是用一大堆的语言代码来编出这些东西,因此面向对象的编程非常直观,在编的过程中就能看见程序运行起来的样子。 另外由于不需用语言来构造这些对象,只是象画图一样将它们画出来,其大小及位置也不须用精确的数字来表示,你喜欢画多大就画多大,您无须知道诸如长是100、宽是80,这样使得编程变得非常简单。 属性(property):就是对象的性质,如长、宽、放的位置、颜色、标题、字体大小等等。为了达到我们所编软件的目的,也为了使软件运行的时候各种界面看起来舒服,我们必须在设计软件时对每个对象的有关属
14、性做适当的设置。所谓有关,就是对于一个对象来说,在一个软件中只有部分与这个软件有关的属性需要设置,而大部分可能不需要设置,只需使用它们隐含的设置就行了,而同一种对象在另一个地方,可能需要设置的属性又不同了。 对于属性的设置,有些只需用鼠标做适当的拖动即可,如长、宽、放的位置等,当然它们也可以在属性窗口中设置,另一些则必须在属性窗口中进行设置,如字体、颜色、标题等。 事件(event):就是可能会发生在对象上的事情,也可以说我们对对象所做的操作,如按钮被按动、对象被拖动、被改变大小、被鼠标左键双击等等。在一个软件中,总会有一些对象在运行时会被我们操作,当然我们不是平白无故去操作一个对象,总是希望
15、这个对象在被我们操作后能做出我们所期望的反应,如退出按钮在被按动后,我们就希望它使软件结束运行。 而这一反映即使是同一种对象在不同的软件中,或在同一个软件中的不同地方,我们所需要的反映都是不同的,比如同样是按钮,“开始”和“退出”在按下后所产生的效果不同。 为了使得对象在某一事件发生时能够做出所需要的反应,我们就必须针对这一事件编出相应的程序代码来完成我们的目标。如一个对象的某个事件被编入了相应的代码,那么软件运行时,当这一事件发生,相应的程序段就被激活,并开始执行,如这一事件不发生,则这段程序就不会运行。 而没有编有代码的事件,即使发生也不会有任何反应。 方法(method):也叫“方法程序
16、”。前面三个概念在上一课已接触过了,“方法”则是个新概念,它是指对象所固有完成某种任务的功能,可由我们在需要的时候调用。 “方法”与“事件”有相似之处,都是为了完成某个任务,但同一个事件可完成不同任务,取决于您所编的代码是怎样的,而方法则是固定的,任何时候调用都是完成同一个任务,所以其中的代码也不需要我们编了,FOXPRO系统已为我们编好,只需在必要的时候调用即可。 比如:文本框可以用以显示文字,也可以输入文字,假如一个表单上有三个文本框,那么我们打字的时候,字进入哪个框呢?这就要看当前的焦点在哪个框上,一般我们可以用鼠标点一下所要的框,即将焦点放到了这个框上,有时我们会让软件自动地将焦点放在
17、某个框上,这时就要调用“设置焦点”方法(setfocus),例如我们要把焦点放到第二个文本框上,调用的方法如下: text2.setfocus 至于它是怎么将焦点放上去的,也就是说具体放的程序是怎么编的,我们不用知道,只要能达到的目的就行。 当然不但是文本框,其它的对象也都有此方法,调用的一般语法是: 对象名称.setfocus 举一个实例来说明:当我们的幸运7游戏软件启动后,我们会看到在第一个文本框text1中有一个光标在闪动,也就是此时焦点在text1上,但我们并不需要在其中输入文字,因此有个光标在闪动看起来很不舒服,此时需要的是按“开始”按钮,所以焦点应在“开始”按钮上,因此我们应该在整
18、个表单启动的时候将焦点设到此按钮上。 当我们启动一个表单的时候,该表单的“激活”事件(activate)就会发生,但由于一般情况下这一事件中没有编入代码,所以即使发生我们也感觉不出来。那么现在我们就要借用这个事件再去调用setfocus方法,便可达到我们目的。具体做法是这样: 打开xy7项目管理器,找到xy7表单,按“编辑”进入表单设计器,调出属性窗口,看一下窗口上面的对象选择窗中是否是“form1”,如图1,如不是则选择到“form1”。 选择“方法程序”,在第一行找到“activate event”事件,如图2, 双击此事件进入程序编辑窗口,输入下面代码: mand1.setfocus 意
19、思是“本表单.command1对象.设置焦点”,command1即是“开始”按钮的名称。 输入完程序后,存盘、退出。这样一旦软件开始运行,表单被启动该表单的“激活”事件发生其中的程序开始执行将焦点设到command1即开始按钮,焦点设在上面后会看到有一个虚线框住按钮标题,这时text1中就没有光标在闪动了。 还不赶快试一下! 第四课 vfp常用的对象、属性、事件、方法 本课介绍一些常用的对象及其属性、事件、方法,掌握了这些知识以后,便可编一些简单实用的软件了。 对象(object): 表单(form) 标签(label) 命令按钮(commandbutton) 表格(grid) 文本框(tex
20、t) 属性(property): 标题(caption) 宽度(width) 值(value) 只读(readonly) 左起始位(left) 高度(hight) 文本对齐(alignment) 可见(visible) 上起始位(top) 控制源(controlsource) 名称(name) 事件(event): 单击(click) 初始化(init) 方法(methord): 设置焦点(setfocus) 刷新(refresh) 释放(release) 第五课 vfp常用编程命令及常用函数 注:在语法中如用方括号“ ”括起来的词句,表示可以不用。 常用命令 假设(if.endif) 分支(
21、do case.endcase) 调用表单(do form) 返回调用程序(return) 结束程序(cancel) 开关命令执行状态(set talk on/off) 循环(do while.enddo) 赋值(store.to) 调用子程序(do) 启动事件处理(read events) 清除事件处理(clear events) 常用函数 数值转换字符(str) 取年份(year) 取整(int) 记录号(recno) 表结尾(eof) 消除前导空格(ltrim) 找到记录(found) 取天日(day) 字符转换数值(val) 取月份(month) 四舍五入(round) 记录数(rec
22、count) 表开头(bof) 消除后续空格(trim) 删除标记(delete) 取系统日期(date) 第六课 编一个完整的软件 其实这个标题说的不太严密,因为任何一个能够正常执行的软件都可称之为完整的软件,而我们这里的意思是:一个有菜单、有数据库、各种输入输出、打印等较完整功能的软件。 那么编个什么软件呢?我们就编个人事管理软件吧。当然为了简便起见,这软件中的人事档案是很不完全,但完全可以说明软件编制的整个过程。 第一步:在硬盘上建一个目录,如d:rsgl。 第二步:启动foxpro系统,建一个项目管理器,存在上面的目录里,就如同在第二课中一样,管理器的名称也叫“rsgl”。 第三步:做
23、一个小小的系统分析。很多人喜欢拿到软件马上就开始编,这种习惯很不好,因为我们必须首先搞清楚这个软件有些什么功能、需要些什么表、有什么报表需要打印等等,这样才能使整个软件开发的过程比较顺利,否则会给后面的软件开发、修改、维护等带来无穷后患,严重时可能导致开发失败。因此我们不管开发什么软件,都应该先做系统分析,即使简单做一下也比不做好,要知道“磨刀不误砍柴功”。 第四步:编制菜单。 第五步:编制数据库及表。 第六步:编制各功能模块。 第七步:编制打印报表。 注意: 1、当您第一次打开源代码中的项目管理器时,如果其所在的目录不是“c:rsgl”,系统会问您“项目已移动,设置为其新目录”,应回答“是”
24、。 2、如果目录改变了,第一次运行程序前,应将菜单初始化代码中的“set default to c:rsgl”语句中的目录改为您的新目录,否则程序运行会出错。 第七课 编程中的一些小技巧 一、 复制 我们在编程会发现一个软件中有许多代码是重复,我们可以不用重复地写,而可以使用菜单中的“复制”、“粘贴”等命令来复制重复的内容,这一点想必大家都会想到。 但有一点可能有的人没有想到,即表单中的控件也是能复制的,而且可以一次复制多个控件。比如我们在制做人事档案的录入表单时,我们做好第一个标签和文本框,接着做姓名的标签和文本框时,就可以采用复制的办法。 用鼠标同时选择编号的标签和文本框,方法是用鼠标画一
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- vfp 初级教程
链接地址:https://www.31ppt.com/p-3062875.html