以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  [求助]窗口间切换后原先窗口未完全关闭是怎么回事  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=65978)

--  作者:loongtai
--  发布时间:2015/3/26 19:44:00
--  [求助]窗口间切换后原先窗口未完全关闭是怎么回事
如题,现有两个窗口:物料类别窗口、物料参数窗口。
在设置物料参数时,有时发现需要切换到物料类别窗口对物料类别进行设置,于是添加了一个切换按钮,代码如下:
Dim 保存 As WinForm.Button = e.Form.Controls("btn_保存")
保存.PerformClick
e.Form.close
Forms("物料类别窗口").open
期望的效果是:物料类别窗口打开,物料参数窗口完全关闭。
可实际的结果是物料参数窗口未能完全关闭。

图片点击可在新窗口打开查看此主题相关图片如下:qq截图20150326194406.png
图片点击可在新窗口打开查看
不知为何会出现这种情况,如何才能完全关闭物料参数窗口。


--  作者:有点甜
--  发布时间:2015/3/26 19:49:00
--  

 

Dim 保存 As WinForm.Button = e.Form.Controls("btn_保存")
保存.PerformClick
e.Form.close
e.Form.BaseForm.Opacity = 0
Forms("物料类别窗口").open


--  作者:loongtai
--  发布时间:2015/3/26 20:53:00
--  
试了下,出现这样的错误

图片点击可在新窗口打开查看此主题相关图片如下:qq截图20150326205325.png
图片点击可在新窗口打开查看


--  作者:有点甜
--  发布时间:2015/3/26 20:53:00
--  

Dim 保存 As WinForm.Button = e.Form.Controls("btn_保存")
保存.PerformClick

e.Form.BaseForm.Opacity = 0
e.Form.close
Forms("物料类别窗口").open


--  作者:loongtai
--  发布时间:2015/3/26 21:15:00
--  
呵呵,还是自己懒没动脑筋,窗口都已关闭,再对窗口进行操作,肯定会出错。
谢谢甜主!

--  作者:loongtai
--  发布时间:2015/3/26 21:47:00
--  
又出现一个问题:
点击切换按钮后能正常关闭物料参数窗口,且正常打开物料类别窗口。
但如果切换到其它程序,比如说浏览一个excel文件,再回到foxtable界面,此时foxtable就如死机了似的,关闭都关闭不了。这是怎么回事??


[此贴子已经被作者于2015/3/26 21:47:02编辑过]

--  作者:loongtai
--  发布时间:2015/3/26 21:50:00
--  
刚才按Alt+Tab切换了运行的程序,发现物料类别窗口不在最前面,才会导致这样的情况。有没有什么方式能让物料类别窗口始终位于最前面。
--  作者:有点甜
--  发布时间:2015/3/26 21:54:00
--  
以下是引用loongtai在2015/3/26 21:47:00的发言:
又出现一个问题:
点击切换按钮后能正常关闭物料参数窗口,且正常打开物料类别窗口。
但如果切换到其它程序,比如说浏览一个excel文件,再回到foxtable界面,此时foxtable就如死机了似的,关闭都关闭不了。这是怎么回事??


[此贴子已经被作者于2015/3/26 21:47:02编辑过]

 

我代码的意思,是把窗口透明处理了。

 

你关闭 物料类别窗口 的时候,也就是afterClose事件,记得把 物料参数窗口 Close一下看看

 

或者试试这样写代码

 

Dim 保存 As WinForm.Button = e.Form.Controls("btn_保存")
保存.PerformClick

e.Form.BaseForm.Opacity = 0
Forms("物料类别窗口").open

e.Form.close