C# 公共控件之NotifyIcon 将窗口最小化到托盘

Posted 无声蝉

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C# 公共控件之NotifyIcon 将窗口最小化到托盘相关的知识,希望对你有一定的参考价值。

 

1、设置窗体和notifyIcon属性

notifyIcon  ,添加contextMenuStrip控件并集成到notifyIcon  的ContextMenuStrip上。

窗体

2、代码

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Reflection;

namespace DemoCSDN

    public partial class Form1 : Form
    
        public Form1()
        
            InitializeComponent();
            this.notifyIcon1.Visible = false;
        

        private void notifyIcon1_MouseDoubleClick(object sender, MouseEventArgs e)
        
            if (this.Visible)
            
                this.Hide();
            
            else
            
                this.notifyIcon1.Visible = false;
                this.Visible = true;
                WindowState = FormWindowState.Normal;
                this.Show();
            
        

        private void 打开主界面ToolStripMenuItem_Click(object sender, EventArgs e)
        
            if (this.Visible)
            
                this.Hide();
            
            else
            
                this.notifyIcon1.Visible = false;
                this.Visible = true;
                WindowState = FormWindowState.Normal;
                this.Show();
            
        

        private void 退出ToolStripMenuItem_Click(object sender, EventArgs e)
        
            this.Close();
        

        private void Form1_SizeChanged(object sender, EventArgs e)
        
            if (WindowState == FormWindowState.Minimized)
            
                this.Hide();
                this.notifyIcon1.Visible = true;
                this.notifyIcon1.ShowBalloonTip(30, "注意", "大家好,这是一个事例", ToolTipIcon.Info);
            
        

        private void Form1_MinimumSizeChanged(object sender, EventArgs e)
        
            this.Hide();
            this.Visible = false;
            WindowState = FormWindowState.Minimized;
             
    

3、操作界面

鼠标移动到图标处显示 TestIcon ,由于设置了 notifyIcon的Text属性

鼠标右键图标,弹出菜单(contextMenuStrip),分别建立了相应的事件

双击图标,弹出正常操作界面

以上是关于C# 公共控件之NotifyIcon 将窗口最小化到托盘的主要内容,如果未能解决你的问题,请参考以下文章

【C#】WinForm中如何让窗口最小化时直接最小化到托盘,后台运行

WinForm 之 窗口最小化到托盘及右键图标显示菜单

winform 不想自动弹出窗口, 最小化後图标要显示在右下角 (像杀毒软件那样),要怎麼做?

C#编写最小化时隐藏为任务栏图标的 Window appllication.

C# 公共控件之numericUpDown

C# 公共控件之 dateTimePicker