WinForm实现最小化窗体时隐藏到系统托盘中

1、首先在工具栏中选择NotifyIcon控件拖入窗体中;

2、设置NotifyIcon控件的相关属性;

Icon:在系统托盘中显示的图标;

Text:当鼠标移动到系统托盘图标上时显示的文本;

ContextMenuStrip:设置系统托盘的右键菜单,这个实现很简单,拖入一个右键菜单的控件,并在下拉列表框中选择就可以了。

3、添加相关代码

/// <summary>
/// 窗体SizeChanged事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void FrmMain_SizeChanged(object sender, EventArgs e)
{
  //当窗体最小化时,隐藏到系统托盘中
  if (WindowState == FormWindowState.Minimized)
  {
    this.Hide();
    this.notifyIcon1.Visible = true;
  }
}

/// <summary>
/// 单击系统托盘图标显示窗体
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void notifyIcon1_Click(object sender, EventArgs e)
{
  this.Visible = true;
  this.WindowState = FormWindowState.Normal;
}

  

时间: 2024-10-07 06:25:19

WinForm实现最小化窗体时隐藏到系统托盘中的相关文章

winform退出或关闭窗体时弹窗提示代码:转

winform退出或关闭窗体时弹窗提示代码,当我们点击窗体的 X 按钮时,会弹出一个对话框,询问我们是直接退出,还是最小化到托盘,还是取消这个行为.或是是否保存当前修改等等.以下以最小化到托盘为例.        首先, 要确定已经将控件NotifyIcon拖到应用窗体中,属性name为notifyicon1. 然后, 双击窗体的FormClosing的事件 ,具码内容如下: private void Form1_FormClosing(object sender, FormClosingEve

C#实现WinForm捕获最小化事件的方法

一般来说,虽然Form类没有提供Minimize的事件,但还是可以通过重载Deactive来实现WinForm捕获最小化事件. 实现方法为:当Form失去焦点后,测试WindowState取得Form状态,若为Minimized既是最小化事件. 本例为最小化后隐藏窗口: 还有种方法更加直接,重载WndProc: 实现代码如下: const int WM_SYSCOMMAND = 0x112; const int SC_CLOSE = 0xF060; const int SC_MINIMIZE =

C# winForm启动最小化到任务栏右侧通知栏并交互操作

一.主要功能:(1).程序启动自动隐藏到任务栏右侧通知栏显示.(与系统托盘同义)(2).双击系统托盘图标显示.隐藏窗口:(3).右击系统托盘图标提供三个菜单选项,“退出”.“隐藏”.“显示”: 二.相关控件:1.建一个WinForm程序—IconForm,将Form属性ShowInTaskbar改为false,这样程序将不会在任务栏中显示.2.将Form属性WindowState选择为 Minimized,以便起来自动最小化隐藏3.在工具栏中的“公共控件”里,拖入NotifyIcon控件—not

C# 实现WinForm窗口最小化到系统托盘代码,并且判断左右鼠标的事件

1.设置WinForm窗体属性showinTask=false 2.加notifyicon控件notifyIcon1,为控件notifyIcon1的属性Icon添加一个icon图标. 3.添加窗体最小化事件(首先需要添加事件引用): this.SizeChanged += new System.EventHandler(this.Form1_SizeChanged); //上面一行是主窗体InitializeComponent()方法中需要添加的引用 private void Form1_Siz

将winform窗口最小化到任务栏托盘中

1.设置WinForm窗体属性ShowInTaskbar=false this.ShowInTaskbar = false;2.加NotifyIcon控件notifyIcon1,为控件notifyIcon1的属性Icon添加一个icon图标.3.添加窗体最小化事件(首先需要添加事件引用):private void Form1_SizeChanged(object sender, EventArgs e)        {            if (this.WindowState == Fo

Winform 拦截最小化、最大化、关闭事件【整理】

1 const int WM_SYSCOMMAND = 0x112; 2 //窗体关闭消息 3 const int SC_CLOSE = 0xf060; 4 //窗体最小化消息 5 const int SC_MINIMIZE = 0xf020; 6 //窗体最大化消息 7 const int SC_MAXIMIZE = 0xf030; 8 //窗体还原消息 9 const int SC_NOMAL = 0xf120; 10 //窗体还原消息 11 const int SC_RESTORE = 6

winform图标最小化显示在任务栏右下角

http://www.cnblogs.com/shenyixin/archive/2013/07/05/3173640.html private void Form1_SizeChanged(object sender, EventArgs e) {     if (this.WindowState == System.Windows.Forms.FormWindowState.Minimized)     {         this.Hide();         this.notifyIc

WinForm实现最小化右下角

首先,要在窗体里面加入这么两个控件,左边的是托盘控件,右边的是菜单控件. 然后设置窗体的FormClosing事件: if (e.CloseReason == CloseReason.UserClosing) { e.Cancel = true; this.WindowState = FormWindowState.Minimized; this.Hide(); return; } 然后再设置notifyIcon1的DoubleClick事件: private void notifyIcon1_

delphi模态窗体最小化会隐藏的问题

在使用delphi创建模态窗体的时候最小化窗体会导致最小化的窗体不可见,再次点击主窗体才会显示. 在这个模态窗体中增加以下函数 procedure WmSysCommand(var msg: TMessage); message WM_SYSCOMMAND; procedure TForm1.WmSysCommand(var msg: TMessage); begin inherited;//必须加,否则模态窗关闭最大化还原将不能用 if msg.WParam = SC_MINIMIZE the