前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >C# 实现最小化托盘功能

C# 实现最小化托盘功能

作者头像
用户7053485
发布2020-03-19 14:55:33
1.3K0
发布2020-03-19 14:55:33
举报
文章被收录于专栏:Kitty的日常笔记Kitty的日常笔记

winform程序实现最小化托盘显示

1.创建新的解决方案,解决方案名称和路径自定义

2.在解决方案下面新建一个窗体,从左边工具箱,将NotifyIcon拖过去窗体,该控件的作用是:运行程序期间在Windows任务栏右侧的通知区域显示图标(也就是我们所说的托盘显示),如下图

3.我们可以设置该控件的相关属性值,直接上代码了

        //调整窗体大小的时候触发的事件
        private void Form1_Resize(object sender, EventArgs e)
        {
            if (this.WindowState==FormWindowState.Minimized)//当窗体设置值为最小化时
            {
                notifyIcon1.Visible = true;//该控件可见
                this.ShowInTaskbar = false;//在任务栏中显示该窗口
            }
            else
            {
                notifyIcon1.Visible = false;//否则该控件不可见
            }
        }
        //双击该控件时触发的事件
        private void notifyIcon1_MouseDoubleClick(object sender, MouseEventArgs e)
        {
            this.Visible = true;//
            this.WindowState = FormWindowState.Normal;//窗口正常显示
            this.ShowInTaskbar = true;//在任务栏中显示该窗口
        }

还有一点,NotifyIcon控件我们默认设置为不可见

还可以设置自己喜欢的图标作为托盘显示的icon

接下来增加一个另外的:

在NotifyIcon控件中增加一个右键菜单

1.在左边的工具栏中拖入一个上下文菜单contextMenuStrip

2.菜单上添加两个子项,显示和退出

3.双击显示和退出进入,下面直接贴代码,代码就不解释了,都有注释。

       private void 显示ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            this.Visible = true;//可见
            this.WindowState = FormWindowState.Normal;//正常显示
            this.ShowInTaskbar = false;//在任务栏中显示该窗口
        }

        private void 退出ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            this.Close();//退出程序
        }

4.接下来是最关键的一步,是将 contextMenuStrip 和 NotifyIcon联系起来的操作,如下图:

ok,到这里的话整个托盘显示的过程已经完成了,以上功能亲测过,如果上文有写错的地方或者有不理解的可以欢迎留言指正。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-06-27 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档