C# 实现WinForm窗口最小化到系统托盘代码
1、如果不想让程序在任务栏中显示,请把窗体的属性ShowInTaskbar设置为false;
2、如果想让程序启动时就最小化,请设置窗体的属性WindowState设置为Minimized。(Minimized
最小化,Normal正常启动,Maximized最大化)
3、拉一个NotifyIcon控件notifyIcon,为控件notifyIcon的属性Icon添加一个icon图标。
4、可以为NotifyIcon加一个ContextMenuStrip右键菜单menu_Notify。
5、本例子禁用了窗体最大化按钮。(设置窗体的属性MaximizeBox的属性为false)
6、主要代码:
#region
私有方法 处理窗体的 显示 隐藏 关闭(退出)
private void ExitMainForm()
{
if (MessageBox.Show("您确定要退出化验数据接收程序吗?", "确认退出",
MessageBoxButtons.OKCancel, MessageBoxIcon.Question,
MessageBoxDefaultButton.Button2) == DialogResult.OK)
{
this.notifyIcon.Visible = false;
this.Close();
this.Dispose();
Application.Exit();
}
}
private void
HideMainForm()
{
this.Hide();
}
private void ShowMainForm()
{
this.Show();
this.WindowState =
FormWindowState.Normal;
this.Activate();
}
#endregion#region 右键菜单处理,显示 隐藏 退出
private void
menuItem_Show_Click(object sender, EventArgs e)
{
ShowMainForm();
}
private void
menuItem_Hide_Click(object sender, EventArgs e)
{
HideMainForm();
}
private void
menuItem_Exit_Click(object sender, EventArgs e)
{
ExitMainForm();
}
#endregion#region
双击托盘上图标时,显示窗体
private void notifyIcon_DoubleClick(object sender,
EventArgs e)
{
if (this.WindowState ==
FormWindowState.Normal)
{
this.WindowState =
FormWindowState.Minimized;
HideMainForm();
}
else if(this.WindowState ==
FormWindowState.Minimized)
{
ShowMainForm();
}
}
#endregion
#region 点最小化按钮时,最小化到托盘
private void
frmMain_SizeChanged(object sender, EventArgs e)
{
if
(this.WindowState == FormWindowState.Minimized)
{
HideMainForm();
}
}
#endregion
#region 窗体关闭时最小化到托盘
private void
frmMain_FormClosing(object sender, FormClosingEventArgs e)
{
e.Cancel = true;
HideMainForm();
}
#endregion
C# 实现WinForm窗口最小化到系统托盘代码的更多相关文章
- C# 实现WinForm窗口最小化到系统托盘代码,并且判断左右鼠标的事件
1.设置WinForm窗体属性showinTask=false 2.加notifyicon控件notifyIcon1,为控件notifyIcon1的属性Icon添加一个icon图标. 3.添加窗体最小 ...
- C# WinForm窗口最小化到系统托盘
* C# WinForm窗口最小化到系统托盘http://hi.baidu.com/kfxtgtqyapouyze/item/8ccfdcd5a174a7312a35c7c3 主要功能:(1).程序启 ...
- C#实现窗口最小化到系统托盘
先添加notifyicon控件notifyIcon1 using System; using System.Collections.Generic; using System.ComponentMod ...
- WPF应用最小化至系统托盘运行
原文:WPF应用最小化至系统托盘运行 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/lordwish/article/details/5178889 ...
- 将 VMware 最小化到系统托盘
1, 下载 Trayconizer官网地址: http://www.whitsoftdev.com/trayconizer/下载地址: http://www.whitsoftdev.com/files ...
- Delphi 7下最小化到系统托盘
在Delphi 7下要制作系统托盘,只能制作一个比较简单的系统托盘,因为ShellAPI文件定义的TNotifyIconData结构体是比较早的版本.定义如下: 123456789 _NOTIFY ...
- 将Mozilla ThunderBird最小化到系统托盘(转载)
转自:http://be-evil.org/mozilla-thunderbird-minize-to-tray.html Mozilla ThunderBird是一款非常不错的邮件客户端,但是其在默 ...
- Delphi 7下最小化到系统托盘(主要是WM_TRAYMSG和WM_SYSCOMMAND消息)
在Delphi 7下要制作系统托盘,只能制作一个比较简单的系统托盘,因为ShellAPI文件定义的TNotifyIconData结构体是比较早的版本.定义如下: 123456789 _NOTIFY ...
- electron监听系统托盘,electron是否最小化到系统托盘
在项目中需要判断窗口是否最小化在系统托盘上,任务栏那已经关闭,查了一晚上的api,始终找不到可以调用的方法,最后绞尽脑汁想到了一个办法,那就是在点右上角的关闭按钮时,加个全局变量,用来标识已经最小到系 ...
随机推荐
- 巨蟒python全栈开发linux之centos6 第二篇
1. .nginx负载均衡的实现 .准备三台机器,准备3台虚拟机,或者和俩同桌交流一下 192.168.226.128 是nginx资源服务器,返回页面的 192.168.226.129 用作ngin ...
- 巨蟒python全栈开发django4:url反向解析图解&&模板渲染
第一部分: 1.(1)知识点回顾: django回顾: ()下载安装 输入网址,a,form表单get post,爬虫 (请求)==>django项目服务端的url(r"index/& ...
- java爬虫-简单爬取网页图片
刚刚接触到“爬虫”这个词的时候是在大一,那时候什么都不明白,但知道了百度.谷歌他们的搜索引擎就是个爬虫. 现在大二.再次燃起对爬虫的热爱,查阅资料,知道常用java.python语言编程,这次我选择了 ...
- CRM客户关系管理系统-需求概设和详设
大概设计 大概设计就是对需求进行一个整体性分析,把需要实现的功能都列出来,对于客户关系管理系统,我们需要从角色出发,从而确定有哪些需求,最好是画个思维导图 首先我们是为培训学校这么一个场景来开发的,所 ...
- js计算两个时间之间的间隔
计算时间间隔的方法有很多,这里只是一种方式,可以方法里直接传入两个时间,也可以传入两个字符串格式的时间,在方法里解析一下就ok,这个例子里不传入参数,直接在方法里随便写一个时间来演示一下 fun() ...
- 洛谷 P4768 [NOI2018]归程
洛谷 361行代码的由来 数据分治大发好啊- NOI的签到题,可怜我在家打了一下午才搞了80分. 正解应该是kruskal重构树或排序+可持久化并查集. 我就分点来讲暴力80分做法吧(毕竟正解我也没太 ...
- python并发之IO模型(二)
blocking IO (阻塞IO) 在linux中,默认情况下所有的socket都是blocking,一个典型的读操作流程大概是这样: 当用户进程调用了recvfrom这个系统调用,kernel就开 ...
- 稀疏表示(Sparse Representations)
1.什么是稀疏表示: 用较少的基本信号的线性组合来表达大部分或者全部的原始信号. 其中,这些基本信号被称作原子,是从过完备字典中选出来的:而过完备字典则是由个数超过信号维数的原子聚集而来的.可见,任一 ...
- 打开一个vue项目
1.cmd打开命令行工具 2.cd定位到目录 3.(sudo) cnpm install安装((sudo)npm install -g cnpm --registry=http://registry. ...
- 使用 C#的 is 和 as 操作符来转型
在 C#语言中进行类型转换的另一种方式是使用 is 操作符. is 检查一个对象是否兼容于指定的类型,并返回一个 Boolean 值: true 或 false.注意 is 操作符永远不会抛出异常,以 ...