zoukankan      html  css  js  c++  java
  • C# 实现最小化托盘功能

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

  • 相关阅读:
    聊聊我在微软外服大数据分析部门的工作经历及一些个人见解
    WPF ScrollViewer(滚动条) 自定义样式表制作 (改良+美化)
    WPF Calendar 日历控件 样式自定义
    c# 委托 事件 lamda 简写
    WPF 启动唯一程序(项目,exe,实例)
    WPF 控件 深度克隆
    c# 枚举操作 正运算 逆运算
    WPF ScrollViewer(滚动条) 自定义样式表制作 图文并茂
    WPF查找子控件和父控件方法
    建立小型开发团队的工作协作:任务日历
  • 原文地址:https://www.cnblogs.com/guhuazhen/p/11095037.html
Copyright © 2011-2022 走看看