你可以遍历所有窗口来确定指定窗口是否已打开,当然,你设计的所有表单其 name 属性应该确保唯一
lExist = .F.
For ii = 1 to Application.Forms.Count
If Application.Forms(ii).name == 'xxx'
lExist = .T.
Exit
Endif
Endfor
Messagebox('窗口' + Iif(lExist, '已', '未') + '打开。')
方法二
IF Wexist("FORM1")
MessageBox("A表单已经打开")
ELSE
Do Form B
ENDIF
注:form1 是A表单的属性名name
来源:http://bbs.youkuaiyun.com/topics/390973936