以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  关于判断窗口是否已经打开  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=110443)

--  作者:裴保民
--  发布时间:2017/12/3 11:32:00
--  关于判断窗口是否已经打开
在打开某一个窗体时怎样判断其他窗体是否已经打开?
--  作者:rjh4078
--  发布时间:2017/12/3 12:14:00
--  
if forms(xxx).opend
--  作者:有点甜
--  发布时间:2017/12/3 12:58:00
--  

 

http://www.foxtable.com/webhelp/scr/0705.htm

 


--  作者:裴保民
--  发布时间:2017/12/3 13:06:00
--  
因为其他窗体不知道具体是哪个窗体可能是A窗体、可能是B窗体、可能是C窗体、可能是T窗体、也有可能同时打开了好几个窗体,我想实现在打开某一个窗体前怎么判断除本窗体以外其他窗体是否有打开?
[此贴子已经被作者于2017/12/3 22:01:14编辑过]

--  作者:有点甜
--  发布时间:2017/12/4 0:03:00
--  

循环每一个窗口

 

For Each f As WinForm.Form In forms
    If f.Opened Then
        msgbox(f.name)
    End If
Next


--  作者:裴保民
--  发布时间:2017/12/4 7:18:00
--  
我想实现在打开某一个窗体前怎么判断除这个窗体以外其他窗体是否有打开?如果是就执行一段代码如果其他窗体没有打开就执行另一段代码
--  作者:有点甜
--  发布时间:2017/12/4 8:56:00
--  

Dim mf As WinForm.Form = forms("窗口1")
Dim flag As Boolean = False
For Each f As WinForm.Form In forms
    If f.Opened AndAlso f.name <> mf.name Then
        msgbox(f.name)
        flag = True
        Exit For
    End If
Next

If flag = True Then
    msgbox(123)
Else
    mf.show
end if


--  作者:裴保民
--  发布时间:2017/12/4 9:48:00
--  
怎么设置模式窗体关闭窗体后执行一个命令呢?
--  作者:有点甜
--  发布时间:2017/12/4 9:53:00
--  
以下是引用裴保民在2017/12/4 9:48:00的发言:
怎么设置模式窗体关闭窗体后执行一个命令呢?

 

1、模式窗口不是有afterClose事件?

 

2、打开,关闭以后,也可以执行,如

 

forms("窗口1").Show

msgbox("关闭后会执行这句代码")


--  作者:裴保民
--  发布时间:2017/12/4 10:15:00
--  
甜老师独立窗体可以模式窗体关闭后不执行关闭后的代码