C#窗口实现最小化到系统托盘

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace notifyIconShow
{
    public partial class ColdJoke : Form
    {
        #region
        //创建NotifyIcon对象
        NotifyIcon notifyicon = new NotifyIcon();
        //创建托盘图标对象
        Icon ico = new Icon("snow.ico");
        //创建托盘菜单对象
        ContextMenu notifyContextMenu = new ContextMenu();
        #endregion

        public ColdJoke()
        {
            InitializeComponent();
        }

        #region 托盘提示
        private void Form1_Load(object sender, EventArgs e)
        {
            //设置鼠标放在托盘图标上面的文字
            this.notifyIcon1.Text = "笑话";
        }
        #endregion

        #region 隐藏任务栏图标、显示托盘图标
        private void Form1_SizeChanged(object sender, EventArgs e)
        {
            //判断是否选择的是最小化按钮
            if (WindowState == FormWindowState.Minimized)
            {
                //托盘显示图标等于托盘图标对象
                //注意notifyIcon1是控件的名字而不是对象的名字
                notifyIcon1.Icon = ico;
                //隐藏任务栏区图标
                this.ShowInTaskbar = false;
                //图标显示在托盘区
                notifyicon.Visible = true;
            }
        }
        #endregion

        #region 还原窗体
        private void notifyIcon1_DoubleClick(object sender, EventArgs e)
        {
            //判断是否已经最小化于托盘
            if (WindowState == FormWindowState.Minimized)
            {
                //还原窗体显示
                WindowState = FormWindowState.Normal;
                //激活窗体并给予它焦点
                this.Activate();
                //任务栏区显示图标
                this.ShowInTaskbar = true;
                //托盘区图标隐藏
                notifyicon.Visible = false;
            }
        }
        #endregion
    }

}
时间: 2024-10-13 01:01:36

C#窗口实现最小化到系统托盘的相关文章

Delphi 7下最小化到系统托盘(主要是WM_TRAYMSG和WM_SYSCOMMAND消息)

在Delphi 7下要制作系统托盘,只能制作一个比较简单的系统托盘,因为ShellAPI文件定义的TNotifyIconData结构体是比较早的版本.定义如下: 123456789   _NOTIFYICONDATAA = record   cbSize: DWORD;   Wnd: HWND;   uID: UINT;   uFlags: UINT;   uCallbackMessage: UINT;   hIcon: HICON;   szTip: array [0..63] of Ansi

将Mozilla ThunderBird最小化到系统托盘(转载)

转自:http://be-evil.org/mozilla-thunderbird-minize-to-tray.html Mozilla ThunderBird是一款非常不错的邮件客户端,但是其在默认状态下不能最小化到系统任务栏中,这个设计让我十分不爽,不过Mozilla那强悍的插 件资源完全弥补这个问题,下面介绍一款插件可以实现将Mozilla ThunderBird最小化到系统托盘: MinimizeToTray Plus Versions 1.0.8 这款插件可以将ThunderBird

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

C#Winform将软件最小化至系统托盘

最近做了一个关于软件最小化到托盘里的功能,对此做了一点小小的总结,关于如何将软件最小化托盘里,并且点击对应小图标会有许多可供选择的菜单,其实主要用的控件是就NotifyIcon控件与contextMenuStrip控件的结合使用,利用contextMenuStrip控件添加对应的菜单以及菜单对应的功能. 第一步:首先介绍一下NotifyIcon控件的属性: BalloonTipIcon -- 气泡提示的类型,有None(无).Info(蓝色感叹号).Warnning(黄色感叹号).Error(小

foobar2000设置关闭按钮最小化到系统托盘

1.设置托盘选项: 2.[File]->[Preferences]->[Advanced]->[Display]->[Default User Interface]->[Close minimises] 最后来一张经典皮肤感受下foobar2000的强大:

delphi 函数isiconic 函数 判断窗口是否最小化

http://blog.sina.com.cn/s/blog_66357ab901012t2h.html delphi 函数isiconic 函数 判断窗口是否最小化 (2012-05-26 22:00:21) 转载▼ 标签: 杂谈   The IsIconic function determines whether the specified window is minimized (iconic). 函数isiconic返回值取决于指定窗口是否已经最小化. BOOL IsIconic(HWN

ubuntu内窗口最大最小化

我用的dell笔记本,开始的时候,需要修改dell笔记本的BIOS,里面有一个 Funtion Key 一开始定义的行为是多媒体的,需要改成默认行为,具体记不清了, 反正知道这个,肯定知道哪里找. 然后,是ubuntu下窗口的最大最小化. 所有的窗口都已养的快捷键:"最大化"是ctrl+super(或win)+上"还原"是ctrl+super(或win)+下"最小化"是ctrl+alt+0,就是O和P两个键上边的那个零键.

CentOS最小化安装系统开启网卡

编辑配置文件: # vi /etc/sysconfig/network-scripts/ifcfg-eth0 将ONBOOT=no改成yes 退出保存 #:wq 重启网卡 #/etc/init.d/network restart vm虚拟机克隆,系统MAC和UUID会重复,导致获取不到IP 报错:device eth0 does not seem to be present, delaying initialization 需要修改文件 1. vi /etc/sysconfig/network-

最小化到托盘,右键退出

1.添加notifyIcon1,并添加Icon图标(.ico文件) 2.添加contextMenuStrip1 3.contextMenuStrip1.Items属性添加选项 4.界面上双击选项编写事件 5.选项退出 private void toolStripMenuItem1_Click(object sender, EventArgs e) { Application.Exit(); } 6.主窗预定Resize事件 if (this.WindowState == FormWindowSt