C#制作启动画面,主窗体在启动画面之前会闪现一次的原因

主窗体为Form1,启动画面窗体为FormSplash。

在Form1的Load事件的开始,将隐藏Form1,显示FormSplash,Load事件结束时显示Form1,关闭FormSplash:

private void Form1_Load(object sender, EventArgs e)
{
    this.Hide();
    FormSplash splash = new FormSplash();
    splash.Show();
    
    //......Form1启动代码

    splash.Close();
    this.Show();
}

运行时,在FormSplash显示之前,Form1闪现了一小段时间,很影响体验。

查找了一段时间,发现是因为Form1的WindowState设为Maximized了

初始化将其设为Minimized,显示启动窗体,在Load事件结束时将其设为Maximized并关闭启动窗体,这样不需要Hide和Show也能实现启动窗体的效果了。

 

 

 

 

 

 

 

你可能感兴趣的:(C#)