📜  最小化窗口到系统托盘 c# (1)

📅  最后修改于: 2023-12-03 15:26:27.247000             🧑  作者: Mango

最小化窗口到系统托盘

当用户点击程序的最小化按钮时,程序可能会继续运行但不可见。为了让用户在需要时重新打开程序,我们可以在系统托盘中添加一个图标来表示程序的运行状态。本文将介绍如何使用C#最小化程序到系统托盘。

添加System.Windows.Forms.NotifyIcon控件

首先,我们需要在项目中添加System.Windows.Forms.NotifyIcon控件。该控件允许我们在系统托盘中添加一个图标。在Visual Studio的工具箱中,我们可以找到NotifyIcon控件并将其拖放到程序的窗体中。

最小化程序并将其隐藏到系统托盘

当用户点击窗口最小化按钮时,我们需要将程序最小化并将其隐藏在系统托盘中。我们可以通过以下代码实现:

private void Form1_Resize(object sender, EventArgs e)
{
    if(WindowState == FormWindowState.Minimized) 
    {
        Hide();
        notifyIcon1.Visible = true;
    }
}

在代码中,我们通过WindowState属性判断窗口是否最小化,并在最小化时调用Hide方法将窗口隐藏。然后,我们将NotifyIcon控件的Visible属性设置为true,表示图标可见。

从系统托盘中还原程序

当用户需要再次打开程序时,我们需要允许他们单击NotifyIcon控件中的图标。我们可以通过以下代码实现:

private void notifyIcon1_Click(object sender, EventArgs e)
{
    Show();
    WindowState = FormWindowState.Normal;
    notifyIcon1.Visible = false;
}

在代码中,我们在单击NotifyIcon控件时将程序还原到正常状态。我们通过Show方法显示窗口,并将WindowState属性设置为FormWindowState.Normal。然后,我们将NotifyIcon控件的Visible属性设置为false,表示图标不可见。

结论

在本文中,我们学习了如何使用NotifyIcon控件将程序最小化到系统托盘。通过学习本文,你可以使用C#编写具有更好用户体验的程序,允许用户在需要时方便地打开或关闭程序。