Foxtable(狐表)用户栏目专家坐堂 → 奇怪的窗口Afterload事件


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

主题:奇怪的窗口Afterload事件

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


加好友 发短信
等级:童狐 帖子:274 积分:2293 威望:0 精华:0 注册:2015/6/14 18:33:00
奇怪的窗口Afterload事件  发帖心情 Post By:2015/11/30 18:14:00 [只看该作者]

一个窗口的afteroad事件中对当前窗口的一些控件进行了属性设置

在系统初次打开时,打开这个窗口,执行afteroad事件没问题

但首次关闭这个窗口时 ,系统报错,
.NET Framework 版本:2.0.50727.8009
Foxtable 版本:2015.11.11.1
错误所在事件:窗口,产品工艺录入,AfterLoad
详细错误信息:
未将对象引用设置到对象的实例。

跟踪发现是:窗口已关闭,再不能调用窗口内的控件了

关闭报错窗口了

然后再使用同样的方式打开该窗口,再关闭均不报错

关闭时也不再执行AfterLoad事件 了,不提示了

疑问:
1,为什么在窗口关闭时会去执行AfterLoad代码

2,窗口已关闭,再不能调用窗口内的控件了,这个提示有时有有时没有

3,我AfterLoad代码里加入了msgbox(1)调式代码。 有时不提示这些1,2,3,4,5直接报错 未将对象引用设置到对象的实例。有时又 提示1,2,3,4 有提示这些时就会具体提示窗口已关闭,再不能调用窗口内的控件了了。


为什么偶尔均会碰到 窗口已关闭,再不能调用窗口内的控件了类似的提示了????


万般无奈只有在窗口的AFTERLOAD事件前
加上 if Forms("产品工艺录入").opended = true then
解决问题
难道所有窗口的设计都这样一下才保险
[此贴子已经被作者于2015/11/30 18:21:34编辑过]

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/11/30 18:25:00 [只看该作者]

你afterLoad事件,肯定另外打开了其它模式窗口,模式窗口关闭会回到afterload事件继续执行。

[此贴子已经被作者于2015/11/30 18:25:25编辑过]

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


加好友 发短信
等级:童狐 帖子:274 积分:2293 威望:0 精华:0 注册:2015/6/14 18:33:00
  发帖心情 Post By:2015/11/30 18:43:00 [只看该作者]

经查绝对没有在这个AFTERLOAD事件 中有打开其它任何窗口的代码

就算如你所说,应该 每次报错才对,现在是初次打开系统时报错,即只第一次报错,其它次的操作完全 正常


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/11/30 20:16:00 [只看该作者]

1、窗口不要设置自动打开;

 

2、做例子上来测试。


 回到顶部