在表单的QueryUnloadEvent事件中加入
If Messagebox("真的退出系统吗? ",4+32+256,"警告") = 6
Clear Events
Quit
Endif
Nodefault
[此贴子已经被作者于2005-8-10 10:09:01编辑过]
当你的查找字段是建立了索引且当前索引是该索引时,SEEK 通常是查找单个记录的最快的方法。不过,当设置了filter时,SEEK非常慢。理由是SEEK将查找符合你的搜索标准的第一个记录。FoxPro为了移动记录指针到相应的记录上,必须找到和你的标准相匹配且和filter条件相称的记录。和SEEK不同, LOCATE 是可进行Rushmore优化的.?当一个可优化的filter 起作用时,LOCATE FOR CustId=m.CustId 通常比SEEK m.CustId 更快。在GO TOP 和 GO BOTTOM
中也存在相似的问题。用无子句的LOCATE来执行GO TOP,将会使记录指针移动到乎合filter 条件的第一个记录。要执行 GO BOTTOM, 设置当前索引标识的降序然后LOCATE, 在将索引设置为原来的升序。
制作一个WIN9X格式的日期设置程序对于你自己的软件,除能够起到美化程序界面,而且能够提高程序的易用性,主要步骤如下:
1、首先建立一个表单,在表单的INIT事件中要首先设置一个判断星期的循环程序。
2、在表单中加入年微调控件,编写该控件的InteractiveChange事件过程,主要是编写当年变动的时候,要刷新月中每天的星期。
3、加入月下拉选项框,进行月份选择,同样要编写该控件的InteractiveChange事件过程,主要是编写当月变动的时候,要刷新月中每天的星期。
4、加入Grid控件,以选择日期。
通常情况下,我们在使用REPORT FORM
命令加PREV可在系统预设窗口中预览报表,但是能不能在一自定义窗口中预览报表呢?这一功能在VFP5.0中是可以的,方法如下:
DEFI WIND WIN1 FROM 0,0 TO 26,100 TITLE“报表预预览”
MOVE WIND WIN1 CENTER
REPORT FORM CUSTOMERS PREV WIND WIN1
RELEASE WIND WIN1
解决在使用REPORT FORM....TO FILE命令报表输出至文件出现的乱码问题
这个问题自FOXPRO2.5 FOR WIN 时已出现,实际上如果于REPORT FORM 命令中加入了TO FILE参数,此报表将会通过目前所采用之打印机驱动程序将报表输出至所指定的文字文件中,除非特别指定附加名,非党员则此文字文件的附加名将为.TXT。但是,如果仅仅使用TO
FILE参数指定报表输出的文字文件,则很可能储存至此文字文件的是POSTSCRIPT或其它打印机代码,而非你所期望的文字,要解决这个问题,请于REPORT FORM....TO FILE中再加入关键字ASCII,如下:
REPORT FORM CUMSTOMERS TO FILE DEMO1 ASCII
MODI FILE DEMO1.TXT
我们知道,HOME()与SYS(2004)能够传回VFP的启动磁盘目录,亦即VFP.EXE所在的磁盘目录,但实际上,所传回的并不是.EXE文件的启动磁盘目录,而是执行时期函数库.ESL所在的磁盘目录,因此,欲于.exe文件中测知.exe文件的启动磁盘目录,应用使用如下命令:
LEFT(SYS(16),RAT(“\”,SYS(16)))