目前,窗体的不透明度为0%,因此在加载时,它应该是不可见的,但是当窗体加载时,它会显示几秒钟。由于默认不透明度设置为0%,并且在将不透明度设置回100%之前将窗体的可见性设置为false,我认为该窗体应该是不可见的,直到我告诉它为止。
public FormMain()
{
InitializeComponent();
this.Visible = false;
this.Opacity = 1.00;
}
如何将表单隐藏为默认设置?
答案 0 :(得分:6)
这是可能的。您必须阻止Application类使表单可见。您无法修改应用程序,这已被锁定。但这有效:
protected override void SetVisibleCore(bool value) {
if (!this.IsHandleCreated) {
this.CreateHandle();
value = false;
}
base.SetVisibleCore(value);
}
这是一次性取消,您下次调用Show()或设置Visible = true将使其可见。您需要某种触发器,NotifyIcon上下文菜单是典型的。请注意,Load事件在实际可见之前不会运行。其他一切正常工作,调用Close()方法终止程序。
答案 1 :(得分:-1)
您可以使用 Form_Shown 事件。当你的主窗体显示时,这个事件将被调用,你可以在那里修改窗体的属性,因为它是完全初始化的。这不是最美观的方式。但这是我找到的唯一简单方法。
private void Form1_Shown(object sender, EventArgs e)
{
this.Visible = false;
}