winform多線程怎么打開(kāi)多個(gè)窗體

小億
244
2023-12-23 16:13:13

在WinForm中打開(kāi)多個(gè)窗體可以使用多線程的方式實(shí)現(xiàn)。可以通過(guò)創(chuàng)建新的線程來(lái)打開(kāi)新的窗體。

首先,創(chuàng)建一個(gè)新的線程,并在該線程中打開(kāi)新的窗體。例如:

private void OpenNewForm()
{
    Thread thread = new Thread(() =>
    {
        Application.Run(new Form2()); // Form2是要打開(kāi)的新窗體
    });
    thread.SetApartmentState(ApartmentState.STA);
    thread.Start();
}

然后,在需要打開(kāi)新窗體的地方調(diào)用OpenNewForm()方法即可。

private void button1_Click(object sender, EventArgs e)
{
    OpenNewForm(); // 點(diǎn)擊按鈕時(shí)打開(kāi)新的窗體
}

這樣就可以在多個(gè)線程中打開(kāi)多個(gè)窗體了。每個(gè)窗體運(yùn)行在自己的線程中,互不干擾。請(qǐng)注意,每個(gè)線程需要有自己的消息循環(huán),因此要確保在新線程中使用Application.Run()來(lái)啟動(dòng)窗體的消息循環(huán)。

0