欢迎来到 IT实训基地-南通科迅教育
咨询电话:0513-81107100
最小化托盘的应用小程序
2017/1/7
科迅教育
492
南通Web前端培训选好学校很重要
当单机应用程序主窗体上的“关闭”按钮时,应用程序并不是被关闭,而是被最小化到系统托盘(即屏幕右下角),以图标的形式显示;
 
单击系统托盘上的应用程序(或者菜单中的“打开”选项时),又会重新显示应用程序主体;
 
单击菜单中的“退出”选项时(主窗体上的“关闭”也可作为关闭按钮,相应的代码会给出),才会真正退出应用程序
 
下面写一个winforms应用程序的实现过程:
 
1,  打开vs2008 新建一个windows应用程序;
 
2,  在默认窗体form1中拖入一个NotifyIcon控件和一个ContextMenuStrip控件并设置NotifyIcon控件显示的图像;(选中“notifyIcon1”单击右上角的三角,设置图片)
 
3,  在ContextMenuStrip中添加一个名为“退出”和“打开”的菜单,并将其关联到NotifyIcon控件(关联步骤:设置notifyIcon控件的属性ContextMenuStrip为当前ContextMenuStrip的Name属性值);
 
4,  接下来是添加一系列的事件:
 
public Form1()
 
        {
 
            InitializeComponent();
 
            //最初打开时设置控制台图标不可见
 
            notifyIcon1.Visible = false;
 
        }
 
 
 
///
 
        ///退出菜单单击事件
 
        ///
 
        ///
 
        ///
 
        private void 退出ToolStripMenuItem_Click(object sender, EventArgs e)
 
        {
 
            this.Close();
 
        }
 
        ///
 
        ///打开菜单单击事件
 
        ///
 
        ///
 
        ///
 
        private void 打开ToolStripMenuItem_Click(object sender, EventArgs e)
 
        { 
 
            notifyIcon1.Visible = true;
 
            this.Visible = true;
 
            this.WindowState = FormWindowState.Normal;
 
             this.Activate();
 
        }
 
 
 
 
 
 
 
///
 
        ///单击form窗口“最小化”到托盘事件
 
        ///
 
        ///
 
        ///
 
        private void Form1_SizeChanged(object sender, EventArgs e)
 
        {
 
            if (this.WindowState == FormWindowState.Minimized)
 
            {
 
                this.Hide();
 
                this.notifyIcon1.Visible = true;
 
            }
 
        }
 
///
 
        ///单击托盘图标,form窗口正常化显示事件
 
        ///
 
        ///
 
        ///
 
Private void notifyIcon1_MouseDown(object sender, MouseEventArgs e) 
 
 
          if(e.Button == MouseButtons.Left && e.Clicks ==1) 
 
          { 
 
             //显示窗口   
 
             this.Visible = true; 
 
            //将窗口正常化                    
 
            this.WindowState = FormWindowState.Normal; 
 
            //激活窗口,使窗口获得焦点   
 
            this.Activate(); 
 
           } 
 
}
 
 
 
///
 
        ///单击form窗口“关闭”最小化到托盘事件
 
        ///
 
        ///
 
        ///
 
private void Form1_Closing(object sender, CancelEventArgs e) 
 
 
    //取消关闭窗口   
 
    e.Cancel = true; 
 
    //将窗口最小化   
 
    this.WindowState = FormWindowState.Minimized; 
 
    //将窗口隐藏   
 
    this.Visible = false; 
 
 
 
 
 
 
      ///
 
        ///双击托盘正常显示窗口程序
 
        ///
 
        ///
 
        ///
 
        private void notifyIcon1_MouseDoubleClick(object sender, MouseEventArgs e)
 
        {
 
            if (e.Button == MouseButtons.Left && e.Clicks == 2)
 
            {
 
                //显示窗口   
 
                this.Visible = true;
 
                //将窗口正常化                   
 
                this.WindowState = FormWindowState.Normal;
 
                //激活窗口,使窗口获得焦点   
 
                this.Activate();
 
            } 
 
 
 
        }
77
关闭
先学习,后交费申请表
每期5位名额
在线咨询
免费电话
QQ联系
先学习,后交费
TOP
您好,您想咨询哪门课程呢?
关于我们
机构简介
官方资讯
地理位置
联系我们
0513-91107100
周一至周六     8:30-21:00
微信扫我送教程
手机端访问
南通科迅教育信息咨询有限公司     苏ICP备15009282号     联系地址:江苏省南通市人民中路23-6号新亚大厦三楼             法律顾问:江苏瑞慈律师事务所     Copyright 2008-