winform程序實現最小化托盤顯示
1.創建新的解決方案,解決方案名稱和路徑自定義
2.在解決方案下面新建一個窗體,從左邊工具箱,將NotifyIcon拖過去窗體,該控件的作用是:運行程序期間在Windows任務欄右側的通知區域顯示圖標(也就是我們所說的托盤顯示),如下圖
3.我們可以設置該控件的相關屬性值,直接上代碼了
//調整窗體大小的時候觸發的事件 private void Form1_Resize(object sender, EventArgs e) { if (this.WindowState==FormWindowState.Minimized)//當窗體設置值為最小化時 { notifyIcon1.Visible = true;//該控件可見 this.ShowInTaskbar = false;//在任務欄中顯示該窗口 } else { notifyIcon1.Visible = false;//否則該控件不可見 } } //雙擊該控件時觸發的事件 private void notifyIcon1_MouseDoubleClick(object sender, MouseEventArgs e) { this.Visible = true;// this.WindowState = FormWindowState.Normal;//窗口正常顯示 this.ShowInTaskbar = true;//在任務欄中顯示該窗口 }
還有一點,NotifyIcon控件我們默認設置為不可見
還可以設置自己喜歡的圖標作為托盤顯示的icon
接下來增加一個另外的:
在NotifyIcon控件中增加一個右鍵菜單
1.在左邊的工具欄中拖入一個上下文菜單contextMenuStrip
2.菜單上添加兩個子項,顯示和退出
3.雙擊顯示和退出進入,下面直接貼代碼,代碼就不解釋了,都有注釋。
private void 顯示ToolStripMenuItem_Click(object sender, EventArgs e) { this.Visible = true;//可見 this.WindowState = FormWindowState.Normal;//正常顯示 this.ShowInTaskbar = false;//在任務欄中顯示該窗口 } private void 退出ToolStripMenuItem_Click(object sender, EventArgs e) { this.Close();//退出程序 }
4.接下來是最關鍵的一步,是將 contextMenuStrip 和 NotifyIcon聯系起來的操作,如下圖:
ok,到這里的話整個托盤顯示的過程已經完成了,以上功能親測過,如果上文有寫錯的地方或者有不理解的可以歡迎留言指正。