程式執行後以最小化的方式執行,即不會出現在工作列上,而會出現在tray裡頭。而在 tray icon 上可以點滑鼠右鍵來彈出功能表單(menu),進行各功能選擇(如結束等)。
In Form1.Designer.cs
namespace SampleProgram
{
partial class SampleClass
{
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(SampleClass));
this.notifyIcon1 = new System.Windows.Forms.NotifyIcon(this.components);
this.notifyiconMnu = new System.Windows.Forms.ContextMenu();
this.menuItem1 = new System.Windows.Forms.MenuItem();
this.SuspendLayout();
//
// notifyIcon1
//
this.notifyIcon1.ContextMenu = this.notifyiconMnu;
this.notifyIcon1.Icon = ((System.Drawing.Icon)(resources.GetObject("notifyIcon1.Icon")));
this.notifyIcon1.Text = "SBPNotify";
this.notifyIcon1.Visible = true;
this.notifyIcon1.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(this.notifyIcon1_MouseDoubleClick);
//
// notifyiconMnu
//
this.notifyiconMnu.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
this.menuItem1});
//
// menuItem1
//
this.menuItem1.Index = 0;
this.menuItem1.Text = "EXIT";
this.menuItem1.Click += new System.EventHandler(this.menuItem1_Click);
//
// SBP
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(592, 373);
this.ControlBox = false;
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.Name = "SBP";
this.ShowInTaskbar = false;
this.Text = "ServerBatcherProcess";
this.WindowState = System.Windows.Forms.FormWindowState.Minimized;
this.ResumeLayout(false);
}
private System.Windows.Forms.NotifyIcon notifyIcon1;
private System.Windows.Forms.ContextMenu notifyiconMnu;
private System.Windows.Forms.MenuItem menuItem1;
}
}
In Form1.cs
namespace SampleProgram
{
public partial class SampleClass : Form
{
public SampleClass()
{
InitializeComponent();
}
private void notifyIcon1_MouseDoubleClick(object sender, MouseEventArgs e)
{
if (this.WindowState == FormWindowState.Minimized)
{
this.WindowState = FormWindowState.Normal;
this.ShowInTaskbar = true;
}
else if (this.WindowState == FormWindowState.Normal)
{
this.WindowState = FormWindowState.Minimized;
this.ShowInTaskbar = false;
}
// Activate the form.
this.Activate();
}
private void menuItem1_Click(object sender, EventArgs e)
{
//隱藏tray icon
notifyIcon1.Visible = false;
//關閉系統
this.Close();
}
}
}