winform7、(c#) 窗口启动时隐藏主窗口

winform7、(c#) 窗口启动时隐藏主窗口

隐藏窗口用的是this.Hide();,但是在主窗口构造函数里使用并不生效。

让C#让窗体在启动时直接隐藏最完美的解决办法,不闪烁。思路为:首先将窗体透明度设置为0,这样窗体在启动时就不显示了,然后再调用Hide将窗体隐藏再将其透明度设置为1即可。

其实就设置2个地方就行了。

1:设置窗体透明度为0

img

我在实践中,我没有设置Opacity 属性为0% ,下面代码一样,没有改变,也达到同样效果。

如果没有this.Opacity = 1; 语句,窗口会闪烁一下。

2:在load事件里使用委托调用Hide

最后发现必须在 要隐藏的窗体的 Load 事件函数写入以下代码。

private void Form1_Load(object sender, EventArgs e)
{
    
    
    this.BeginInvoke(new Action(() => {
    
    
        this.Hide();
        this.Opacity = 1;
    }));
}

解释一下Action,Action是.NET内部提供的一个无返回值、泛型的委托,共有16重载,分别是0个参数~15个参数,在很多情况下都能满足要求,无需自己重新定义委托。

猜你喜欢

转载自blog.csdn.net/qq_38463737/article/details/121513131