首页 > C# 窗体最小化的托盘/系统通知区域(转)

C# 窗体最小化的托盘/系统通知区域(转)

1.在form中添加一个NotifyIcon控件 

2.把1.ico这个图标放在binDebug目录下 

先看看效果图:

 

 

3.代码的实现 

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Text;

using System.Windows.Forms;

namespace WindowsApplication1

{

    public partial class Form1 : Form

    {

        public Form1()

        {

            InitializeComponent();

            this.Text = "实现最小托盘";

            this.notifyIcon1.Icon = new Icon("1.ico");//设置当前图标

        }

        private void button1_Click(object sender, EventArgs e)

        {



            WindowState = FormWindowState.Minimized;//最小化时隐藏窗体

            //this.Visible = false; //是否显示该控件

            this.notifyIcon1.Visible = true;     //图标在任务栏区域中可见

            this.notifyIcon1.ShowBalloonTip(300, "哈哈", "窗体成功隐藏了", ToolTipIcon.Info); //设置气球状工具提示显示的时间为10秒

            this.ShowInTaskbar =false;//windows任务栏中不显示窗体

        }

        private void button2_Click(object sender, EventArgs e)

        {

            WindowState = FormWindowState.Maximized; //窗体最大化

        }

        private void button3_Click(object sender, EventArgs e)

        {

            WindowState = FormWindowState.Normal; //窗体常规

        }

        private void notifyIcon1_MouseDoubleClick(object sender, MouseEventArgs e)

        {

            if (this.WindowState == FormWindowState.Minimized)//判断是否窗体最小化

            {

                this.WindowState = FormWindowState.Normal;

            }

            this.Activate();//激活窗体

            this.notifyIcon1.Visible = false;//在任务栏区域中不显示图标

            this.ShowInTaskbar = true; //窗体在任务栏区域中可见

        }



    }

} 

转载于:https://www.cnblogs.com/haik/archive/2010/03/29/1700021.html

更多相关:

  •   窗体的ControlBox:确定窗体是否含有“控件/系统”菜单框 设置ControlBox为False ,将不显示窗体的最大化,最小化,以及关闭按钮,即使你把MinimizeBox设为True 也无用。。。切记!!! 转载于:https://www.cnblogs.com/xiexingen/archive/2012/09/...

  • IHostingEnviroment 获取环境相关洗洗 IsDevelopment()、IsStaging()、IsProduction() 分别为:开发、准生产、生产环境 IsEnviroment("Uat") 自定义环境,比如自定义Uat环境 新建: appsettings.Uat.json文件 {"Enviroment":...

  • 七. DockPanel DockPanel定义一个区域,在此区域中,您可以使子元素通过描点的形式排列,这些对象位于 Children 属性中。停靠面板其实就是在WinForm类似于Dock属性的元 素。DockPanel会对每个子元素进行排序,并停靠在面板的一侧,多个停靠在同侧的元素则按顺序排序。     如果将 LastChild...

  • 该链接有导入,导出源码,我的代码有下链接改写,完善而成的, http://www.cnblogs.com/colder/p/3611906.html using System;using System.Collections.Generic;using System.Linq;using System.Web;using System...

  • 转载请注明出自天外归云的博客园:http://www.cnblogs.com/LanTianYou/ 对于SharePoint中已经是Record的Item,我们想要修改他的属性,这在UI界面是无法完成的: 这时需要通过Records.BypassLocks API来完成。设计一个tool,利用Records.BypassLocks...

  • C# async await 学习笔记1(http://www.cnblogs.com/siso/p/3691059.html)  提到了ThreadId是一样的,突然想到在WinForm中,非UI线程是无法直接更新UI线程上的控件的问题。 于是做了如下测试: using System; using System.Collectio...

  • top –hv | -abcHimMsS –d delay –n iterations –p pid [, pid …] top程序提供运行系统的动态实时视图,它可以显示系统概要信息以及当前由Linux内核当前管理的任务列表。所示的系统概要信息的类型以及为任务显示的信息的类型、顺序和大小都是用户可配置的,并且可以在重新启动时使配置保持...

  • 加上下面两句即可实现root窗口的置顶显示,可以用于某些程序的消息提示,能够弹出到桌面显示 root = Tk() root.wm_attributes('-topmost',1) 转载于:https://www.cnblogs.com/shuchengxiang/p/6632140.html...

  • 转载文章,原文链接:Matlab中的静态文本框中显示多行内容 有时候,我们在GUI中利用静态文本框显示程序的结果,但是结果很长,一行未必可以显示的开,而静态文本框不像edit或listbox那样通过滚动条来显示多行内容,即便设置了max和min属性也是一样的。 于是,怎么在静态文本框中显示多行是很有意义的。 解决方法 利用函数text...

  • 使用方法3个简单步骤对于其他API调用,看到演示。 //显示一个信息没有标题 toastr.info('Are you the 6 fingered man?')其他选项/显示一个警...

  • GDB 调试 ------------------------------------------------------------------------------- gdb 帮助文档 help -- 查看 gdb 的命令种类 help -- 查看 CmdType 种类的 gdb 命令 apropos