回复 5楼 TonyDeng
我按照你的意思,在登陆窗口添加CLEAR EVENTS 后,窗口自带的关闭按钮能够退出程序。但是通过密码验证后,进入主表单就不行了,程序就直接执行完毕了。以下代码是我的登陆代码。注:乱码的原因是复制产生的。这点你能够理解的。
private yhm,mm
yhm=alltrim()
mm=alltrim(thisform.T2.value)
use d:\program\vfp98\zjk\mima
go top
locat for yhm==alltrim(mima.̞)
if found() and mm==alltrim(mima.ÃÜÂë)
do form d:\program\vfp98\zjk\main
use
release thisform
①
else
messagebox("ÇëÖØÐÂÊäÈëÃÜÂ룡",0+0+0,"Ìáʾ")
thisform.T2.value=""
thisform.T2.setfocus
endif
昨天晚上尝试了多次,不行。但是我有个思路。那就是在登陆窗口添加一个参数。其直为0或1.如果点击了登陆按钮,那么就为1。在登陆窗口的queryunload事件中添加一句:
*dengluchongkou.init() 定义一个参数
public n
n=0
dengluchongkou.dengluanniu.click()
n先为1,执行release,会触发queryunload事件,不执行clear event。
同时最后必须将n置为0,否则,点击“×”还会执行clear event。
n=1
其他代码
&&这里是程序的其他代码,包含do form otherformnanme。
thisform.release
n=0
*dengluchongkou.queryunload()
if n=0
clear event
release thisform
else
release thisform
endif
这样,当密码正确的时候,执行到①处的时候,会做一个判断,就不执行 clear event。继续登陆主窗口。如果直接点击右上角的关闭按钮,就执行n=0后的代码。
试验了一下,貌似可以完全退出。
希望这能够对VPF New Learner有帮助。
[
本帖最后由 parden 于 2011-9-30 10:25 编辑 ]