十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
在标准模块里设置一个全局变量,窗体打开了把它设为True,窗体关闭设为False,通过判断那个标志就知道窗体是否打开了:
创新互联长期为成百上千家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为雨山企业提供专业的做网站、网站建设,雨山网站改版等技术服务。拥有十余年丰富建站经验和众多成功案例,为您定制开发。
Public
frmOpenFlag
As
Boolean
窗体上:
Private
Sub
Form_Load()
frmOpenFlag=True
......
End
Sub
Private
Sub
Form_Unload()
frmOpenFlag=False
End
Sub
其他窗体里判断:
Private
Sub
Command1_Click()
If
frmOpenFlag
then
MsgBox
"Form1已经打开!"
End
Sub
End
Sub
参考代码:
Private Sub Form1_Closing(sender As Object, e As CancelEventArgs) Handles Me.Closing
If MessageBox.Show("确定要关闭吗?", Me.Text, MessageBoxButtons.YesNo, MessageBoxIcon.Question) = DialogResult.No Then
e.Cancel = True
End If
End Sub
运行效果:
Dim p As New Process
p.StartInfo="d:\test.docx"
p.Start
p.WaitForExit() '等待程序结束
Msgbox("文档已经关闭")
如果是单线程程序,在文档关闭前就会一直卡住,所以要用多线程处理。