3.5.3总结的经验和技术
利用VFP开发程序过程中曾遇到了不少的问题和麻烦,为此耗费了很多精力和时间,为了让更多的人少走弯路,我者总结了几点VFP开发的经验。
1.在打包VFP程序生成安装盘的时候常常会出现CAB压缩错误提示,这时要看看你打包时是否关掉了程序中的项目管理器,如果没有关掉,系统在压缩程序时无法压缩正在使用的项目文件信息,所以出现压缩错误提示。
2.在编译生成可执行程序后或生成安装盘重新安装运行时,程序主画面闪一下后就退出了,用户无法进行控制操作,这时要看看在你的主程序的末尾是否加上了READEVENTS语句,以使程序暂停运行等待用户响应。
3.程序打包后,安装运行时无法脱离VFP主窗口环境。这时你可以自己编辑一个CONFIG.FPW系统配置文件对生成的程序进行运行环境等各方面的设定。具体方法如下:
在应用程序中打开项目管理器,在代码一栏内新建一程序其代码如下:
screen=off
sysmenu=off
然后存为一个名叫CONFIG的文件,这时系统默认的扩展名为:PRG,保存好文件后退出。在刚才保存的位置找到刚才存好的CONFIG.PRG文件,将其重命名为CONFIG.FPW然后重新进入项目管理器,在代码栏内选中该文件,单击右键选择"排除"一项,这样系统在编译的时候就不将其编译在内而将它视为系统文件,这样你的程序一运行就先自动搜索当前路径或默认路径下是否存在该系统配置文件,如存在就执行进入系统配置。
4.在程序表单中设计退出按钮时为保险起见要加语句:CLEAREVENTS来结束用户操作,使程序安全退出。
5.在VFP5.0上面编写的程序可以不出问题地移植到VFP6.0上,但VFP6上面写的程序虽然用的语句VFP5上面全都具备,但你编译打包时出现的错误提示之多令你无法忍受,所以一般不要进行这种由高版本到低版本的移植
让visualfoxpro在浏览器中运行。
一般情况下,在使用VFP系统开发的应用系统,只要经过编译、发布和安装过程就可以脱离VFP运行环境而在操作系统中直接运行。其实这只是应用系统的一种运行方式,我们完全可以利用活动文档(ActiveDocuments)的功能,实现将单纯操作系统方式下的应用系统向基于HTML的客户界面应用程序的转变。通过活动文档可顺利地将以前编写的应用程序移植到Web页面上,并可将VFP的功能传递到浏览器上。下面以一个人员情况应用程序实现在浏览器中运行为例,介绍具体的实现过程:
1.新建一个项目命名为new,并在该项目文件管理器添加一个表单BD1到项目中,设定该表单的属性如下:
TitleBar=0&&&&关闭表单的标题栏
WindowState=2&&&&设定表单运行时为最大化方式
ScollBar=3&&&&设定当表格处于非整屏显示时,可以使用垂直和水平滚动条
在表单对象的DestoryEvents事件中加入如下程序代码:
clearEvents&&&&保证当表单关闭时,用户能够退出应用程序的运行
2.在表单中添加数据环境和控件对象。
在表单的数据环境中添加一个数据表作为表单中的数据源,在这里我们增加的是一个人员情况表。
利用鼠标拖动数据环境中的相应字段选项添加到表单中,作为表单的编辑对象,并添加一个对数据记录进行操作的类对象,设置完毕的表单如图1。
3.添加活动文档类到项目,在建立好用户应用程序界面后,就可以向项目中添加活动文档类,其步骤如下:
在项目管理器中选择"类"页面,单击"新建"按钮,创建一个活动文档类,设定其基类为活动文档,将之存储于自定义的类库文件中。
设定好新类后双击对象,打开新类对象的代码窗口,为新类对象的DestoryEvents事件设定程序代码如下:DOFORMBD1
READEVENTS
设定新类对象的属性:
ContainerReleaseType=1
4.设定生成的新类为主文件,VFP6中活动文档应用程序的编译方式与其他普通VFP应用程序相同。将活动文档表单连接为应用程序,编译后将生成一个new.app应用程序,这个应用程序可以在VFP环境下或在浏览器中运行。
为了在浏览器中运行活动文档,我们要在系统选单"工具"中选择"运行ActiveDocument",在文件名编辑框中输入要运行的活动文档的文件名new.app,单击"运行"按钮,系统会提示你对欲运行的文件处理进行选择,这里我们要选择"在文件的当前位置打开"选项,便可在浏览器中运行活动文档。
通过上面的操作步骤,我们就可以很方便地实现把使用VFP系统编写的应用程序移植到浏览器中去运行。
第四章测试
经过几天的测试,并且考虑了一些不可遇见的情况来完成程序的测试,结果非常更人满意,基本达到了作者之前的预想,也证明了软件测试是非常的重要的,可是说测试的时间和开发的时间一样长,在测试中发现了不少的问题,改正了一些错误的地方,还有对数据类型的转换有了更进一步的认识,还有由于visualfoxpro8.0的特性,发现text,和combo要用alltrim()函数来去空格,要不然会找不到数据,或把空格写到库中,影响以后数据的整齐性,使一些模块不能正常.
第五章结束语
我学到了许多的在课堂上学不到的东西,就是经验。发现自己有许多的想法都是跟实际不一样的,要考虑的东西也要设想的多,比如用到数据环境的时候,如果在想用数据环境应该怎么办,还有向grid这个控件在运行机制中如果有别的表单中在一次开了这个库gird则会不好用。项目的事先的策划是很重要的,东西不能拿来就写这样不是少东西就是代码时间加长,反而代码的效率不高,而且错误较多,如果事先想的比较周全比较多,则跟着自己的思路来是非常快的,这样会减少写代码的时间,而且效率和易读性更好。写代码阶段其实并不是很重要,他只是一个翻译阶段,只要熟练了一种工具,那么翻译阶段会很快就结束的,而应用网络找一些书东所不知道的东西是很容易的。测试阶段,我认为也是一个很重要的环境,如果不举出各种误操作,来对项目进行测试,那么这个软件就会漏洞百出,没有人能一次性写出完美的代码,所以测试是保证软件好用的非常重要的阶段,经过此次测试我也积累了不少的经验,和visualfoxpro8.0的一些特性。以便在以后工作在用此软件时能更准确、高效的使用。实验是最好的老师,我现在更好的理解这句话的含意。
参考文献
1、《vfp最新实用教程》作者:李淑华编著。
出版社:辽海出版社2002年6月第1版
ISBN号:4-01-1750012-4
2、《VFP程序设计教程》作者:彭春年,张广订,周以宁编著。
出版社:清华大学出版社2003年4月第1版
ISBN号:6-03-1750014-1
3、《中文ACCESS2000新编教程》作者:王诚群编著
出版社:清华大学出版社2000年9月第1版
科海培训中心策划。
ISBN号:9-00-006478-1
4、《数据库系统原理及应用教程》作者:苗雪兰,刘瑞新,宋会群编著。
出版社:机械工业出版社。
ISBN号:3-02-160023-1
??
??
??
??
30页
上一篇:
VFP教学设备管理系统(论文和程序)
下一篇:
经典心理语录净化心灵