VB.NET - 加载时隐藏表单

时间:2016-04-17 20:14:45

标签: vb.net visual-studio visual-studio-2015

所以这里有几个问题,但他们都会给出相同的答案Me.Hide(),如果你在加载时计算它是“有效的”,它会显示但是然后会隐藏几秒之后会产生一个奇怪的阴影-y - 痛苦的影响。

实施例: 1 (显示并几乎立即隐藏的小窗口是我试图永远不会显示的窗口)

有没有办法在加载时实际隐藏整个表单?我知道整个VisibilityCore方法但是我找不到一种方法可以在以后再次显示它。

有没有办法隐藏它,所以它永远不会显示,除非我告诉它显示?

目前我正在使用“Hide()结合Form.Show方法”。

3 个答案:

答案 0 :(得分:2)

如果您将表单的Opacity属性设置为0(通过属性窗口),则不应出现此问题。

当您想要显示表单时(如果要显示该表单),只需将不透明度设置回1.0

答案 1 :(得分:2)

不透明仍然是一个黑客。正确的方法是不要显示它,而不是让它看不见。要做到这一点,不要使它成为"启动对象"一点都不。

在“项目属性”屏幕的“应用程序”选项卡上,有一个“启动对象”设置。使用Sub Main()创建一个模块,并通过选择它作为启动对象,而不是那个显然没有做任何视觉效果的小形式,使其成为应用程序的入口点。

也许你在起始形式中有一些初始化代码......将其移动到Sub Main。

答案 2 :(得分:0)

您可以在应用程序启动时最小化表单。

    [STAThread]
    static void Main()
    {

        Application.EnableVisualStyles();
        Application.SetCompatibleTextRenderingDefault(false);

        Form fm = new Form1();
        fm.WindowState = FormWindowState.Minimized;

        Application.Run(fm);

    }