当前位置: 代码迷 >> PB >> 帮忙看段代码,实现关闭所有窗口的功能。解决方案
  详细解决方案

帮忙看段代码,实现关闭所有窗口的功能。解决方案

热度:29   发布时间:2016-04-29 08:56:27.0
帮忙看段代码,实现关闭所有窗口的功能。
window w 
w=w_main.getfirstsheet() 
do while isvalid(w)
if w.tag='背景' then
w=w_main.getnextsheet(w) 
else
close(w)
w=w_main.getfirstsheet() 
end if
loop


此段代码想要实现关闭所有窗口,可是运行后没有反应。
还有,我看不懂这段代码的意思,希望高手解释一下。谢谢。

------解决方案--------------------
你关闭的窗口应该是mdi子窗口才可以,就是说用opensheet打开的窗口
------解决方案--------------------
window w
w=w_main.getfirstsheet() //获取第一个或者是最早打开的子窗口
do while isvalid(w) //如果子窗口有效就开始循环
if w.tag='背景' then //如果子窗口是用作显示背景就找下一个
w=w_main.getnextsheet(w)
else
close(w) //如果子窗口是不是用作用作显示背景就关闭 
w=w_main.getfirstsheet() //重新找第一个或者是最早打开的子窗口
end if
loop

上面的语句只会关闭所有的tag<>'背景' 的子窗口。不会关闭主窗口

------解决方案--------------------
程序本身没语法错误,你要关闭所有窗口,直接关闭父窗口就可以了。如果上面的代码你是在父窗口里写的,就直接写上close(this)就可以了
------解决方案--------------------
探讨
我是关闭除主窗口之外的所有窗口。主窗口的tag为背景。

------解决方案--------------------
你要关闭的窗口是不是通过opensheet打开的?必须是使用opensheet打开且mdiframe为w_main的!
------解决方案--------------------
探讨
你要关闭的窗口是不是通过opensheet打开的?必须是使用opensheet打开且mdiframe为w_main的!

------解决方案--------------------
探讨
那如果是用open打开的,要把这些窗口关闭,代码怎么写呢?谢谢。
  相关解决方案