“C#”怎么判断一个窗体是否已经打开?
1个回答
展开全部
判断Form2实例,可以在Form1中创建一个Form2的属性
当Form1的按钮点击时,判断Form1中Form2的实例是否为空,若为空则创建Form2实例,并将Form2实例Show出来,若Form1中的Form2实例不为空,则点击无效。
当Form2实例关闭时,将Form1中的Form2实例设为空。(可以将Form1作为参数传给Form2,并且将Form1中的Form2属性设为public,这样在Form2中就可以)
Form1部分代码:
public Form2 f2 = null;
private void button1_Click(object sender, EventArgs e)
{
if (f2 == null)
{
f2 = new Form2(this);
f2.Show();
}
}
Form2部分代码
Form1 f1;
public Form2(Form1 ff)
{
InitializeComponent();
f1 = ff;
}
private void Form2_FormClosing(object sender, FormClosingEventArgs e)
{
f1.f2 = null;
}
当Form1的按钮点击时,判断Form1中Form2的实例是否为空,若为空则创建Form2实例,并将Form2实例Show出来,若Form1中的Form2实例不为空,则点击无效。
当Form2实例关闭时,将Form1中的Form2实例设为空。(可以将Form1作为参数传给Form2,并且将Form1中的Form2属性设为public,这样在Form2中就可以)
Form1部分代码:
public Form2 f2 = null;
private void button1_Click(object sender, EventArgs e)
{
if (f2 == null)
{
f2 = new Form2(this);
f2.Show();
}
}
Form2部分代码
Form1 f1;
public Form2(Form1 ff)
{
InitializeComponent();
f1 = ff;
}
private void Form2_FormClosing(object sender, FormClosingEventArgs e)
{
f1.f2 = null;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询