在c#可执行文件中运行表单

本文关键字:运行 表单 可执行文件 | 更新日期: 2023-09-27 17:53:10

我正在尝试运行这样的代码:

while (true)
{ 
   counter++;
   Form f = new Form1();
   Application.Run(f);
}

一个无限循环,配置一个基于Form类的Form1类,并使用Application.Run命令运行这个Form

问题是,第一次我可以得到Form可见,但在循环的下一次迭代的形式是不可见的。

有人知道吗?

但是,表单第一次进入循环和第二次进入循环有什么区别?为什么第一次没有变量作用域问题?此外,在循环的每次新迭代中,我创建一个新的Form1变量。

在c#可执行文件中运行表单

why not do like:

private void Form1_Load(object sender, EventArgs e)
{
    Thread p = new Thread(showform);
    p.Start();
}
private void showform()
{
    Form1 f = new Form1();
    f.Show();
}

为什么要创建同一个表单的无限个实例?

不管怎样,这就是你想要的吗?检查此代码

while(true){
       new Form1().show();
       System.Threading.Thread.Sleep(1000); 
}

我将应用程序设置为休眠1秒,以显示它正在打开一个新表单。

编辑:我检查了你的代码,当我试图关闭应用程序时,它正在打开一个新表单。所以正如汉斯所说,当有一个窗体实例时,窗口将把焦点放在它上面。当你关上它…它将创建一个新的