【问题标题】:How do I minimize a WinForms application to the notification area?如何将 WinForms 应用程序最小化到通知区域?
【发布时间】:2011-06-11 16:13:52
【问题描述】:

我想将 C# WinForms 应用程序最小化到系统托盘。我试过这个:

Having the application minimize to the system tray when button is clicked?。我第一次最小化它时,在屏幕上找不到它 - 任务栏/任务栏上方/托盘。

如果我点击 alt tab,我可以在那里看到我的应用;如果我 alt tab 进入它并再次最小化它,它会显示在任务栏上方:

我做错了什么?

【问题讨论】:

    标签: c# .net windows winforms notifyicon


    【解决方案1】:

    在最小化时隐藏表单然后单击托盘图标后显示的选项怎么样?

    在表单调整大小事件中,在那里进行检查并隐藏表单

       private void Form_Resize(object sender, EventArgs e)
        {
            if (WindowState == FormWindowState.Minimized)
            {
                this.Hide();
            }
        }
    

    然后当点击任务栏图标时恢复它。

        private void notifyIcon_Click(object sender, EventArgs e)
        {
            this.Show();
            this.WindowState = FormWindowState.Normal;
        }
    

    【讨论】:

    • 这正是我想要的。谢谢
    【解决方案2】:

    您需要在表单中添加NotifyIcon。然后,您可以使用 NotifyIcon 的 Click 事件将您的 Form 上的 Visible 属性再次设置为 true。

    【讨论】:

      【解决方案3】:

      您需要在 NotifyIcon 上添加一个图标才能使其可见。

      【讨论】:

        【解决方案4】:

        您必须设置表单的属性ShowInTaskbar = true。它会自动最小化到任务栏。

        【讨论】:

          猜你喜欢
          • 2015-06-18
          • 2021-07-03
          • 1970-01-01
          • 2023-04-09
          • 2017-08-19
          • 1970-01-01
          • 1970-01-01
          • 2021-08-01
          • 2011-11-29
          相关资源
          最近更新 更多