以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 切换表时自动关闭当前表的窗口 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=23335) |
-- 作者:foxstudent -- 发布时间:2012/9/9 13:01:00 -- 切换表时自动关闭当前表的窗口 我的表中的窗口都是独立窗口,通过左侧导航栏打开表的时候同时打开窗口,但是在切换其他表的时候,必须手动关闭原来表的窗口,应该怎么样才能实现只要离开当前表,该表的窗口就自动关闭? |
-- 作者:Fotable -- 发布时间:2012/9/9 14:07:00 -- forms("你要关的窗口").close |
-- 作者:foxstudent -- 发布时间:2012/9/9 14:38:00 -- 以下是引用Fotable在2012-9-9 14:07:00的发言:
forms("你要关的窗口").close 这个方法跟手动关闭差不多,可能您误会了我的意思, 假如我有5个表,Ta、Tb、Tc、Td、Te, 5个窗口W1、W2、W3、W4、W5, 导航栏对于Ba、Bb、Bc、Bd、Be共5个按钮, 现在点按钮Bb,打开的是表Tb,窗口W2,我现在要点Ba,可以在用代码 forms("W2").close ,但是如果刚才打开的是TC和W3,再加一句forms("W3").close,以此类推,如果我有几十个表和几十个窗口,难道必须要每个按钮上都把所有的窗口关闭命令都写一遍吗?
|
-- 作者:狐狸爸爸 -- 发布时间:2012/9/9 14:46:00 -- 关闭所有已经打开的窗口:
For Each frm As WinForm.Form in Forms If frm.Opened Then frm.Close End if Next
|
-- 作者:foxstudent -- 发布时间:2012/9/9 14:58:00 -- 以下是引用狐狸爸爸在2012-9-9 14:46:00的发言:
关闭所有已经打开的窗口:
For Each frm As WinForm.Form in Forms If frm.Opened Then frm.Close End if Next
狐爸,您的这个方法把导航栏的共有窗口一起关闭了
|
-- 作者:狐狸爸爸 -- 发布时间:2012/9/9 15:00:00 -- For Each frm As WinForm.Form in Forms if frm.Name <> "导航窗口名" Then If frm.Opened Then frm.Close End if End if Next |
-- 作者:foxstudent -- 发布时间:2012/9/9 15:11:00 -- 哈,我真笨,怎么没想到只要加个判断条件就可以了! |