精华内容
下载资源
问答
  • Winform最小化到托盘

    千次阅读 2017-01-10 19:51:10
    1. 添加控件NotifyIcon (1)属性Icon:托盘图标。该属性必须要设置,否则无法...也可以在程序最小化到托盘时才显示托盘图标,即程序没有最小化到托盘时设为False,最小化到托盘时设为True。 (4)窗口的FormClosing事件

    1. 添加控件NotifyIcon

    (1)属性Icon:托盘图标。该属性必须要设置,否则无法显示托盘图标。

    (2)属性Text:鼠标放在托盘图标上显示的文字。

    (3)属性Visible:可以一直设为True,即程序运行之后就一直显示托盘图标;也可以在程序最小化到托盘时才显示托盘图标,即程序没有最小化到托盘时设为False,最小化到托盘时设为True。

    (4)窗口的FormClosing事件:单击窗口的“X”按键,实现程序最小化到托盘。

    private void Form1_FormClosing(object sender, FormClosingEventArgs e)
    {
        //取消关闭窗口
        e.Cancel = true;
        //最小化主窗口
        this.WindowState = FormWindowState.Minimized;
        //不在系统任务栏显示主窗口图标
        this.ShowInTaskbar = false;
    }

    如果需要程序在最小化到托盘时,弹出提示气泡,只需要在FormClosing事件中添加:

    private void Form1_FormClosing(object sender, FormClosingEventArgs e)
    {
        //取消关闭窗口
        e.Cancel = true;
        //最小化主窗口
        this.WindowState = FormWindowState.Minimized;
        //不在系统任务栏显示主窗口图标
        this.ShowInTaskbar = false;
        //提示气泡
        notifyIcon1.ShowBalloonTip(2000, "最小化到托盘", "程序已经缩小到托盘,单击打开程序。", ToolTipIcon.Info);
    }

    (4)事件MouseClick或者Click:单击托盘图标,程序恢复。

    private void notifyIcon1_MouseClick(object sender, MouseEventArgs e)
    {
        if (e.Button == MouseButtons.Left)
        {
            if (this.WindowState == FormWindowState.Minimized)
            {
                //还原窗体
                this.WindowState = FormWindowState.Normal;
                //系统任务栏显示图标
                this.ShowInTaskbar = true;
            }
            //激活窗体并获取焦点
            this.Activate();
        }
    }
    2. 添加控件ContextMenuStrip

    该控件不是必须的,根据自己的需要决定是否添加。ContextMenuStrip用于右键托盘图标,显示自定义功能列表。效果可以参考QQ的右键托盘图标,可以添加 打开主面板、退出、帮助以及功能之间的跳转等功能。

    (1)NotifyIcon的属性ContextMenuStrip设置为该控件。

    (2)自定义ContextMenuStrip的Items属性,向其中添加ToolStripMenuItem,每个ToolStripMenuItem还可以继续添加二级菜单。

    (3)编写ToolStripMenuItem的Click事件。

    如:添加退出功能,新增一个ToolStripMenuItem,设置属性Text的值为退出,编写Click属性。不能只是简单地写this.Close(),因为这会触发上面添加的FormClosing事件,这样会导致添加的退出实际上却是最小化到托盘。应该在this.Close()的前面添加this.Dispose(),即:

    private void toolStripMenuItem1_Click(object sender, EventArgs e)
    {
        this.Dispose();
        this.Close();
    }
    展开全文
  • winform最小化到托盘

    2019-09-22 01:47:22
    1.拖取NotifyIcon控件。...2.指定NotifyIcon的Icon(很重要,否则最小化后找不窗口). 3.找到window的SizeChanged事件: private void Form1_SizeChanged(object sender, EventArgs e) { if (t...

    1.拖取NotifyIcon控件。将该控件的visible设成false.

    2.指定NotifyIcon的Icon(很重要,否则最小化后找不到窗口).

    3.找到window的SizeChanged事件:

        private void Form1_SizeChanged(object sender, EventArgs e)
        {
                if (this.WindowState == FormWindowState.Minimized)
                {
                    this.ShowInTaskbar = false; //不显示在系统任务栏
                    notifyIcon1.Visible = true; //托盘图标可见
                }
        }

    4.找到NotifyIcon控件的单击或者双击事件:

        private void notifyIcon1_DoubleClick(object sender, EventArgs e)
            {
                this.ShowInTaskbar = true;  //显示在系统任务栏
                this.WindowState = FormWindowState.Normal;
                notifyIcon1.Visible = false;
            }

     

    转载于:https://www.cnblogs.com/myCodingSky/p/3528853.html

    展开全文
  • WinForm最小化到托盘以及托盘右键菜单 首先,先拖一个NotifyIcon到主窗体,然后设置NotifyIcon的图标,不然等下最小化后,都找不到那个程序了,还有那个Text也是,不写名字,就默认是NotifyIcon了…如下图: 然后双击...

    WinForm最小化到托盘以及托盘右键菜单

    首先,先拖一个NotifyIcon到主窗体,然后设置NotifyIcon的图标,不然等下最小化后,都找不到那个程序了,还有那个Text也是,不写名字,就默认是NotifyIcon了…如下图:

    然后双击NotifyIcon,代码如下:
    ///
    /// 添加双击托盘图标事件(双击显示窗口)
    ///
    ///
    ///
    private void notifyIcon1_MouseDoubleClick(object sender, MouseEventArgs e)
    {
    if (WindowState == FormWindowState.Minimized)
    {
    //还原窗体显示
    WindowState = FormWindowState.Normal;
    //激活窗体并给予它焦点
    this.Activate();
    //任务栏区显示图标
    this.ShowInTaskbar = true;
    //托盘区图标隐藏
    notifyIcon1.Visible = false;
    }
    }

    然后分别到主窗口的单击事件里面添加以下两个方法即可,如下图:

    代码如下:

        /// <summary>
        /// 判断是否最小化,然后显示托盘
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void F_Main_SizeChanged(object sender, EventArgs e)
        {
            //判断是否选择的是最小化按钮
            if (WindowState == FormWindowState.Minimized)
            {
                //隐藏任务栏区图标
                this.ShowInTaskbar = false;
                //图标显示在托盘区
                notifyIcon1.Visible = true;
            }
        }
        /// <summary>
        /// 确认是否退出
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void F_Main_FormClosing(object sender, FormClosingEventArgs e)
        {
            if (MessageBox.Show("是否确认退出程序?", "退出", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK)
            {
                // 关闭所有的线程
                this.Dispose();
                this.Close();
            }
            else
            {
                e.Cancel = true;
            } 
        }
    

    下面是托盘右键菜单的制作:
    先拖一个ContextMenuStrip到主界面,然后添加你的右键菜单,在然后绑定给NotifyIcon即可,图形如代码如下:

    绑定菜单给NotifyIcon

    后台代码:

        /// <summary>
        /// 托盘右键显示主界面
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void 显示ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            WindowState = FormWindowState.Normal;
        }
        /// <summary>
        /// 托盘右键退出程序
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void 退出ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (MessageBox.Show("是否确认退出程序?", "退出", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK)
            {
                // 关闭所有的线程
                this.Dispose();
                this.Close();
            }
        }
    
    展开全文
  • WinForm最小化到托盘以及托盘右键菜单 首先,先拖一个NotifyIcon到主窗体,然后设置NotifyIcon的图标,不然等下最小化后,都找不到那个程序了,还有那个Text也是,不写名字,就默认是NotifyIcon了..如下图: 然后双击...

    WinForm最小化到托盘以及托盘右键菜单

    首先,先拖一个NotifyIcon到主窗体,然后设置NotifyIcon的图标,不然等下最小化后,都找不到那个程序了,还有那个Text也是,不写名字,就默认是NotifyIcon了..如下图:

    然后双击NotifyIcon,代码如下:
            /// <summary>
            /// 添加双击托盘图标事件(双击显示窗口)
            /// </summary>
            /// <param name="sender"></param>
            /// <param name="e"></param>
            private void notifyIcon1_MouseDoubleClick(object sender, MouseEventArgs e)
            {
                
              NotifyIcon1.Visible = false;
                 this.Show();
                        WindowState = FormWindowState.Normal;
                 this.Focus();
            }



    然后分别到主窗口的单击事件里面添加以下两个方法即可,如下图:


    代码如下:

            /// <summary>
            /// 判断是否最小化,然后显示托盘
            /// </summary>
            /// <param name="sender"></param>
            /// <param name="e"></param>
            private void F_Main_SizeChanged(object sender, EventArgs e)
            {
                //判断是否选择的是最小化按钮
                if (WindowState == FormWindowState.Minimized)
                {
                    //隐藏任务栏区图标
                    this.ShowInTaskbar = false;
                    //图标显示在托盘区
                    notifyIcon1.Visible = true;
                }
            }
            /// <summary>
            /// 确认是否退出
            /// </summary>
            /// <param name="sender"></param>
            /// <param name="e"></param>
            private void F_Main_FormClosing(object sender, FormClosingEventArgs e)
            {
    //注意判断关闭事件Reason来源于窗体按钮,否则用菜单退出时无法退出!
                if (e.CloseReason == CloseReason.UserClosing)
                {
                    e.Cancel = true;    //取消"关闭窗口"事件
                    this.WindowState = FormWindowState.Minimized;    //使关闭时窗口向右下角缩小的效果
                    NotifyIcon1.Visible = true;
                    this.Hide();
                    return;
                }
              
            }
    下面是托盘右键菜单的制作:
    先拖一个ContextMenuStrip到主界面,然后添加你的右键菜单,在然后绑定给NotifyIcon即可,图形如代码如下:



    绑定菜单给NotifyIcon


    后台代码:

            /// <summary>
            /// 托盘右键显示主界面
            /// </summary>
            /// <param name="sender"></param>
            /// <param name="e"></param>
            private void 显示ToolStripMenuItem_Click(object sender, EventArgs e)
            {
                      notifyIcon1.Visible = false;
                this.Show();
                WindowState = FormWindowState.Normal;
                this.Focus();
            }
            /// <summary>
            /// 托盘右键退出程序
            /// </summary>
            /// <param name="sender"></param>
            /// <param name="e"></param>
            private void 退出ToolStripMenuItem_Click(object sender, EventArgs e)
            {
                if (MessageBox.Show("是否确认退出程序?""退出"MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK)
                {
                    // 关闭所有的线程
                    this.Dispose();
                    this.Close();
         Application.Exit();
                }
            }

    展开全文
  • C#winform最小化到托盘

    2009-11-16 15:41:00
    c# winform最小化到托盘,也就是最小化到右下角,其实很简单,winform中有专门的控件。下面是完整的代码,没太多需要解释的。先在winform中添加notifyIcon控件,然后激活相应事件,添加代码。因为屏蔽了关闭窗体事件,...
  • c# winform最小化到托盘

    千次阅读 2008-12-17 11:21:00
    c# winform最小化到托盘,也就是最小化到右下角,其实很简单,winform中有专门的控件。 下面是完整的代码,没太多需要解释的。 先在winform中添加notifyIcon控件,然后激活相应事件,添加代码。如果要屏蔽关闭窗体...
  • STEP1、添加托盘图标控件NotifyIcon(直接从工具箱中拖动添加即可) STEP2、添加(重写)窗口尺寸变动函数Form1_Resize private void Main_SizeChanged(object sender, EventArgs e) { if (this.WindowState == ...
  • c# winform最小化到托盘,也就是最小化到右下角,其实很简单,winform中有专门的控件。 下面是完整的代码,没太多需要解释的。 先在winform中添加notifyIcon控件,然后激活相应事件,添加代码。因为屏蔽了关闭...
  • if (this.WindowState == FormWindowState.Minimized) //隐藏到托盘与QQ相似 { this.ShowInTaskbar = false;//不在任务栏中显示该窗口 this.Visible = true; //显示程序图标 this.Hide(); //隐藏窗口 } } ...
  • 如题。 最小化到托盘后, 如何弹出? 有事件吗? 弹出后 如何显示在 最前端??? 在线等, 急!!!!~~~~~~!
  • 简单的最小化到托盘的程序。支持托盘右键菜单唤醒,双击唤醒,
  • WinForm:最小化到托盘

    2018-09-29 15:05:00
    WinForm:最小化到托盘 ①在MainForm上托2个控件NotifyIcon和ContextMenuStrip。②NotifyIcon:用于显示托盘。a)先Choose Icon,作为托盘显示的图标;b)设置属性ContextMenuStrip,关联右击后显示的...
  • 实现winform应用程序窗体最小化到任务栏托盘
  • 最小化到托盘的时候,却不知道程序到了那里去了,因此,最小化的时候,伴随一个气泡提示信息,显得有一定的必要,如下截图所示。 首先在主窗体的设计界面中添加一个NotifyIcon控件,然后实现相关...
  • 并且把contextMenuStrip 绑定 notifyIcon 上面 然后依次实现下面的事件 //获取当前鼠标下可视控件的句柄 [DllImport("user32.dll")] public static extern int WindowFromPoint(int xPoint, int yPoint); ...
  • 最近做的最小化隐藏到托盘的代码,有详细的注释,现在此分享,与大家一同进步

空空如也

空空如也

1 2 3 4 5 ... 13
收藏数 246
精华内容 98
关键字:

winform最小化到托盘