点击关闭按钮时缩小到系统任务栏

下面的代码设置窗体的关闭按钮事件,当点击标题栏中的“X”时,程序缩到任务栏上:首先添加一个NotifyIcon控件,参考如下属性代码:

            private System.Windows.Forms.NotifyIcon ntiSysTray;
            
// 
            
// ntiSysTray
            
// 
            this.ntiSysTray.ContextMenuStrip = this.contextMenuStrip1;
            
this.ntiSysTray.Icon = ((System.Drawing.Icon)(resources.GetObject("ntiSysTray.Icon")));
            
this.ntiSysTray.Text = "JarulyPlayer";
            
this.ntiSysTray.DoubleClick += new System.EventHandler(this.ntiSysTray_DoubleClick);


窗体Form1的Closing事件:
            this.Closing += new System.ComponentModel.CancelEventHandler(this.Form1_Closing);


        
private void Form1_Closing(object sender, System.ComponentModel.CancelEventArgs e)
        
{
            HideSToolStripMenuItem_Click(sender,e);
            e.Cancel = true
;
        }



        
private void HideSToolStripMenuItem_Click(object sender, EventArgs e)
        
{
            
this.Hide();
            ntiSysTray.Visible 
= true;
            
fullViewToolStripMenuItem.Enabled = false;
            contextMenuStrip1.Items.Add(
"退出(&X)",null,new EventHandler(exitPlayer));

        }


值得注意的是,必须用 System.ComponentModel.CancelEventArgs来声明参数 e, 并用 e.Cancel 值是否为真来确定下一步的执行。这里没有弹击对话框提示用户是否要真的退出。因为是个播放器,当用户点击“X”时,程序自动缩小到系统任务栏中,并更新NotifyIcon的Text值为当前正在播放的状态和音乐标题。

你可能感兴趣的:(系统)