C#窗体的最大化/最小化/还原/最小化到托盘/NotifyIcon的代码实现
来源:互联网 发布:windows10录屏软件 编辑:程序博客网 时间:2024/05/05 15:14
1.最小化
WindowState = FormWindowState.Minimized;
//最小化时隐藏窗体
this.Visible=false;
2.最大化
WindowState == FormWindowState.Maximized;
3.还原为正常
WindowState == FormWindowState.Normal;
4.在托盘显示
打开VS.net的工具箱,然后选择NotifyIcon,拖到Form上,在属性中Icon中设置图象添加一个ContextMenu,输入需要的选择项在NotifyIcon中的ContextMenu属性中可以设置刚添加的ContextMenu 点托盘上的图标 就可以显示选择项
实例部分代码:
#region 还原窗体
private void normalForm()
{
//this.AutoScaleBaseSize = new System.Drawing.Size(5, 15);
//this.ClientSize = new System.Drawing.Size(504, 267);
this.Visible = true;
//this.WindowState=FormWindowState.Normal;
}
#endregion
#region 最小化窗体并在托盘显示,隐藏窗体
private void minForm()
{
WindowState = FormWindowState.Minimized;
this.Visible = false;
this.notifyIconCMPC.Visible = true;
this.myTimer.Enabled = false;
//this.Hide();
//设置气球状工具提示显示的时间为10秒
this.notifyIconCMPC.ShowBalloonTip(30);
}
#endregion
#region 重写WndProc屏蔽掉关闭按钮
protected override void WndProc(ref Message m)
{
const int WM_SYSCOMMAND = 0x0112;
const int SC_CLOSE = 0xF060;
if (m.Msg == WM_SYSCOMMAND && (int)m.WParam == SC_CLOSE)
{
this.Visible = false;
return;
}
base.WndProc(ref m);
}
#endregion
private void notifyIcon1_MouseDoubleClick(object sender, MouseEventArgs e)
{
if (this.WindowState == FormWindowState.Minimized || this.Visible == false)
{
this.normalForm();
}
else
{
minForm();
}
}
public partial class MainForm : Form
{
FormWindowState fws = FormWindowState.Normal;
public MainForm()
{
InitializeComponent();
this.SizeChanged += new EventHandler(MainForm_SizeChanged);
this.notifyIcon1.DoubleClick += new EventHandler(notifyIcon1_DoubleClick);
this.notifyIcon1.Icon = new Icon("Virgo.ico");
this.notifyIcon1.Visible = false;
}
void MainForm_SizeChanged(object sender, EventArgs e)
{
if (this.WindowState == FormWindowState.Minimized)
{
this.ShowInTaskbar = false;
this.notifyIcon1.Visible = true;
}
else
{
fws = this.WindowState;
}
}
void notifyIcon1_DoubleClick(object sender, EventArgs e)
{
if (this.WindowState == FormWindowState.Minimized)
{
this.ShowInTaskbar = true;
this.notifyIcon1.Visible = false;
this.WindowState = fws;
}
}
}
- C#窗体的最大化/最小化/还原/最小化到托盘/NotifyIcon的代码实现
- C#窗体的最大化/最小化/还原/最小化到托盘/NotifyIcon的代码实现
- C# 窗体最大化,最小化,还原 的代码
- C#程序实现窗体的最大化/最小化
- 最小化窗体的时候,将窗体放到托盘(NotifyIcon)
- C#简单代码实现窗体最小化到托盘运行
- 捕捉窗体的最小化、最大化、还原消息
- C#窗体最小化到右下角托盘的方法
- C#窗体最小化到右下角托盘的方法
- c#最小化到托盘代码
- vb.net 中最小化到托盘和锁定窗体大小的问题(notifyIcon的两个重要属性)
- QT实现无边框窗体的最小化,最大化/还原,关闭,拖动和双击最大化等功能
- C#编写NotifyIcon 将窗口最小化到托盘
- C#编写NotifyIcon 将窗口最小化到托盘
- C#编写NotifyIcon 将窗口最小化到托盘
- C#编写NotifyIcon 将窗口最小化到托盘
- C#最小化到托盘的方法
- Delphi中捕捉窗体的最小化、最大化、还原消息
- 求设计“微机原理课程学习网站的设计与实现 ”
- linux coredump配置与调试
- (转)思科2900、3500交换机初始化、配置操作手册
- 关于Tomcat的端口问题
- Windows 下 Apache Mysql PHP 安装后的配置
- C#窗体的最大化/最小化/还原/最小化到托盘/NotifyIcon的代码实现
- DbHelper数据操作类
- [转]javascript判断浏览器类型与版本
- memset和ZeroMemory
- vc查看宏展开之后的结果
- [code]二分法:从已排好序的String数组中查询要搜索的字符串的下标
- lin对computer概念的理解
- c++ 异常处理
- Windows 下 Apache Mysql PHP 的安装