C#如何判断另一个窗口是否打开

点击form1中按钮后form2弹出,再点击form2中按钮后,form2关闭同时form3弹出,再次点击form1中那个按钮,如何判断form3已经弹出

第1个回答  2015-03-09
可以这样:每一个窗口打开时返回一个状态标识表这个窗口打开,然后只要读取这标识的值就知道窗口是否打开了。

还有就是你可以试着获取你要判断的窗口的窗口句柄,如果获取的为空或者NULL,则表示该窗口未打开,若获取到了该窗口句柄,则表示打开了的。追问

试过了,之前因为每次都实例化,导致所表示的可能不一样,比较,后来重新建了一个类,在里面实例弄成public静态,确保每次show和hide的都是同一个,改变visible属性,虽然可能方法不够好,但问题是解决了,不过还是谢谢了!

第2个回答  推荐于2018-05-17
在form3初始化函数中写一个Console.WriteLine("form3已弹出");本回答被网友采纳
第3个回答  2015-03-09
可以使用静态变量去控制
第4个回答  2015-03-09
form1按钮点击中写form2.show(this);
form2按钮点击中写form3.show(this.parent);
这样,在form1里就应该通过this取到form3的对象了,就可以知道是否已经弹出了。本回答被提问者采纳
相似回答