C#托盘控件notifyIcon的使用

任务栏图标控件,用于程序是否需要在任务栏通知区域显示图标。

1、创建NotifyIcon控件

从工具箱拖出一个NotifyIcon控件。

属性设置:

NotifyIcon控件Text属性与应用程序的标题(主Form的Text属性)相同。

NotifyIcon控件Icon属性与应用程序的Icon属性相同。

此时启动应用程序时,会在通知栏显示一个与应用程序图标一样的图标,该图标属于应用程序。也称应用程序的托盘图标。

2、更改关闭窗体事件FormClosing为最小化到托盘运行

private void  Form1_FormClosing(object sender, FormClosingEventArgs e)
{
    if (e.CloseReason == CloseReason.ApplicationExitCall)
    {
        Application.Exit();
    }
    else
    {
        e.Cancel = true;
        this.WindowState = FormWindowState.Minimized;
        this.Hide();
        this.notifyIcon1.Visible = true;
    }
}

3、增加双击托盘图标恢复程序显示界面

private void notifyIcon1_MouseDoubleClick(object sender, MouseEventArgs e)
{
	notifyIcon1.Visible = true;
	this.Show();
	this.Activate();
	this.WindowState = FormWindowState.Normal;
}

4、增加托盘右键菜单

拖出一个ContextMenuStrip控件,并定义三个菜单项,分别为显示、隐藏和退出。设置NotifyIcon控件ContextmenuStrip属性

为此ContextMenuStrip控件。并且为显示、隐藏和退出的单击事件增加如下程序,这样在托盘图标上右击可以弹出此菜单执行程

序的各种功能。

private void 显示ToolStripMenuItem_Click(object sender, EventArgs e)
{
    this.Show();
    this.WindowState = FormWindowState.Normal;
    this.Activate();
}


private void 隐藏ToolStripMenuItem_Click(object sender, EventArgs e)
{
    this.Hide();
}


private void 退出ToolStripMenuItem_Click(object sender, EventArgs e)
{

    Application.Exit();
}

 

你可能感兴趣的:(C#)