我正在创建一个新线程,其中只包含以下代码:
void myThread()
{
new Form1().Show();
}
为了问题,保持通用。
我怎么能阻止这个帖子结束?因为线程结束,表单关闭。我怎么能继续线程,以便表单可以保持打开状态,并仍然触发事件(如按钮点击等)
感谢您的帮助:)
答案 0 :(得分:2)
好吧,如果您使用多线程显示其他表单,则应拨打Application.Run(Form)
。
编辑:为了清楚起见,Application.Run
方法在表单关闭之前不会结束。所有活动等都可以。
答案 1 :(得分:0)
如何以模态方式显示表单 - 虽然为什么要创建一个新线程来显示表单?
void myThread()
{
new Form1().ShowDialog();
...
为了清楚 - 我相信这会有效地锁定你的新线程,直到表单关闭。
答案 2 :(得分:-2)
在你的线程中放置一个无限循环很简单,例如:
void myThread()
{
new Form1().Show();
while(true)
{
Thread.Sleep(16);
}
}
我为什么要睡觉呢? ...因为运行无限循环而内部没有任何东西,考虑到极快的迭代,所以CPU占用大量CPU。 16毫秒的睡眠为您提供60 fps的速度,足以满足您的需求。 无论如何,为什么你需要在一个单独的线程中显示表单?