Foxtable(狐表)用户栏目专家坐堂 → 关闭窗口出错的问题已经解决,请下载1月4日更新,另发两个常见错误。


  共有21162人关注过本帖树形打印复制链接

主题:关闭窗口出错的问题已经解决,请下载1月4日更新,另发两个常见错误。

帅哥哟,离线,有人找我吗?
狐狸爸爸
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47448 积分:251048 威望:0 精华:91 注册:2008/6/17 17:14:00
关闭窗口出错的问题已经解决,请下载1月4日更新,另发两个常见错误。  发帖心情 Post By:2009/1/4 10:22:00 [只看该作者]

另外在帮助yuanbin的过程中,发现大家可能会犯的常见错误:

1、在关闭窗口后继续调用窗口控件,例如下面的代码:

e.Form.Close()
Vars("变量") =  e.Form.Controls("TextBox1").Value

窗口已经关闭,对象不存在了,所以自然出错。
如果你要调用窗口中的控件,必须在e.form.close语句之前调用,例如:

Vars("变量") =  e.Form.Controls("TextBox1").Value
e.Form.Close()

2、自定义登陆窗口的退出按钮代码为:
Syscmd.Project.Exit()

AfterOpenProject的代码为:

代码段一
forms("登陆窗口").Open
代码段二

如果用户在登陆窗口单击按钮,此时系统已经关闭,但是代码段二会继续执行,报错的概率极大。
所以我们最好增加一个逻辑变量,将退出按钮的代码改为:

Vars("变量") = True
Syscmd.Project.Exit()

将AfterOpenProject事件代码改为:

代码段一
Forms("登陆窗口").Open()
if Vars("变量") = true Then
   Return
Else
    代码段二
End If

只有这样处理,才能确保用户在登陆窗口单击退出按钮,系统已经退出之后,不会再有代码继续执行

[此贴子已经被作者于2009-1-4 10:43:02编辑过]

[本帖被加为精华]
 回到顶部
帅哥哟,离线,有人找我吗?
smileboy
  2楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 好心情 一级勋章
等级:超级版主 帖子:715 积分:5564 威望:0 精华:1 注册:2008/8/31 20:45:00
  发帖心情 Post By:2009/1/4 10:27:00 [只看该作者]

顶!

 回到顶部
帅哥哟,离线,有人找我吗?
yuanbin
  3楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:102 积分:880 威望:0 精华:4 注册:2008/8/31 21:47:00
  发帖心情 Post By:2009/1/4 10:47:00 [只看该作者]

谢谢!

 回到顶部
帅哥哟,离线,有人找我吗?
kylin
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 F6
等级:狐精 帖子:3030 积分:19188 威望:0 精华:2 注册:2008/9/1 7:50:00
  发帖心情 Post By:2009/1/4 11:01:00 [只看该作者]

ding

 回到顶部
帅哥哟,离线,有人找我吗?
czy
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章 三级勋章 二级勋章
等级:超级版主 帖子:6318 积分:33945 威望:0 精华:10 注册:2008/8/31 20:56:00
  发帖心情 Post By:2009/1/4 12:39:00 [只看该作者]

收到

 回到顶部
帅哥哟,离线,有人找我吗?
gdlgh
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:449 积分:3506 威望:0 精华:5 注册:2008/9/1 2:32:00
  发帖心情 Post By:2009/1/4 21:20:00 [只看该作者]

以后小心了!

 回到顶部
帅哥哟,离线,有人找我吗?
程兴刚
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:7235 积分:40550 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2009/1/5 19:16:00 [只看该作者]

谢谢,刚看到!

 回到顶部