1. 程式人生 > >WinForm實現最小化到系統托盤方法例項詳解

WinForm實現最小化到系統托盤方法例項詳解

本文例項講述了WinForm實現最小化到系統托盤方法。分享給大家供大家參考。具體分析如下:

有個叫NotifyIcon的控制元件

1、建個WinForm專案,其它操作略過。
2、拉個NotifyIcon控制元件,將屬性Visable設定成False,在Text屬性上隨便填些檔案。
3、實現Form的SizeChanged事件,程式碼如下:

if(this.WindowState == FormWindowState.Minimized) //判斷是否最小化
{
this.ShowInTaskbar = false; //不顯示在系統工作列
notifyIcon.Visible = true; //托盤圖示可見
}

4、實現NotifyIcon控制元件的DoubleClick事件,程式碼如下:

if(this.WindowState == FormWindowState.Minimized)
{
this.ShowInTaskbar = true; //顯示在系統工作列
this.WindowState = FormWindowState.Normal; //還原窗體
notifyIcon.Visible = false; //托盤圖示隱藏
}

例題:

private ContextMenu notifyiconMnu;
#region 最小化到工作列
/// <summary>
/// 最小化到工作列
/// </summary>
private void Initializenotifyicon()
{
  //定義一個MenuItem陣列,並把此陣列同時賦值給ContextMenu物件 
  MenuItem[] mnuItms = new MenuItem[3];
  mnuItms[0] = new MenuItem();
  mnuItms[0].Text = "顯示視窗";
  mnuItms[0].Click += new System.EventHandler(this.notifyIcon1_showfrom);
  mnuItms[1] = new MenuItem("-");
  mnuItms[2] = new MenuItem();
  mnuItms[2].Text = "退出系統";
  mnuItms[2].Click += new System.EventHandler(this.ExitSelect);
  mnuItms[2].DefaultItem = true;
  notifyiconMnu = new ContextMenu(mnuItms);
  notifyIcon1.ContextMenu = notifyiconMnu;
  //為托盤程式加入設定好的ContextMenu物件 
}
private void notifyIcon1_DoubleClick(object sender, EventArgs e)
{
  if (this.WindowState == FormWindowState.Minimized)
  {
    this.Show();
    this.ShowInTaskbar = true; 
    this.WindowState = FormWindowState.Normal; 
    notifyIcon1.Visible = false; 
  }
}
public void notifyIcon1_showfrom(object sender, System.EventArgs e)
{
  if (this.WindowState == FormWindowState.Minimized)
  {
    this.Show();
    this.ShowInTaskbar = true;
    this.WindowState = FormWindowState.Normal;
    notifyIcon1.Visible = false;
  }
}
public void ExitSelect(object sender, System.EventArgs e)
{
  //隱藏托盤程式中的圖示 
  notifyIcon1.Visible = false;
  //關閉系統 
  this.Close();
  this.Dispose(true);
}
#endregion
private void Form_main_SizeChanged(object sender, EventArgs e)
{
  if (this.WindowState == FormWindowState.Minimized)
  //判斷是否最小化
  {
    notifyIcon1.Visible = true;
    this.Hide();
    this.ShowInTaskbar = false;
    Initializenotifyicon();
  }
}

相關推薦

WinForm實現系統托盤方法例項

本文例項講述了WinForm實現最小化到系統托盤方法。分享給大家供大家參考。具體分析如下: 有個叫NotifyIcon的控制元件 1、建個WinForm專案,其它操作略過。 2、拉個NotifyIcon控制元件,將屬性Visable設定成False,在Text屬性上隨便填些檔案。 3、實現Form的Size

C#實現WinForm捕獲事件的方法

ora web 創建 align window nbsp param tle bds 一般來說,雖然Form類沒有提供Minimize的事件,但還是可以通過重載Deactive來實現WinForm捕獲最小化事件。 實現方法為:當Form失去焦點後,測試WindowSta

WinForm托盤

1.設定WinForm窗體屬性showinTask=false 2.加notifyicon控制元件notifyIcon1,為控制元件notifyIcon1的屬性Icon新增一個icon圖示。 3.新增窗體最小化事件(首先需要新增事件引用): 程式碼如下: this.S

SWT 中實現托盤圖示,並只能通過托盤的彈出選單關閉程式

from: http://www.blogjava.net/Unmi/archive/2008/03/23/188040.html 我們有些程式會想要托盤處顯示圖示,最小化到系統欄;關閉按鈕不關閉程式,也是最小化到系統欄;點選托盤圖示啟用視窗,通過托盤圖示的彈出選單來退出程式

實現托盤

轉自http://www.rupeng.com/forum/thread-1474-1-1.html 所謂的“托盤”,在Windows系統介面中,指的就是下面任務條右側,有系統時間等等的標誌的那一部分。在程式最小化或掛起時,但有不希望佔據工作列的時候,就可以把程式放到托盤

CentOS Minimal版安裝後VMware聯網

     Centos minimal最小化安裝後需要對其進行網路配置操作:  下面介紹怎麼樣配置網路,裝完系統後--->緊接著就能按下面步驟來進行了: (1)步驟1  首先開啟虛擬機器軟體,virtual network editor裡面,點選VMnet8,再點選

WinForm實現系統托盤

3、實現Form的SizeChanged事件,程式碼如下: if(this.WindowState == FormWindowState.Minimized)  //判斷是否最小化{     this.ShowInTaskbar =false;  //不顯示在系統工作列     notifyIcon.Vis

java實現系統托盤圖示的程式碼

花了幾天時間學習了一下java如何實現系統托盤圖示,本來在最程式碼上看到有相關程式碼,但是發現非常複雜,於是自己寫了一個簡潔的,不為牛幣,只為和大家分享一下。 由最程式碼官方編輯於2014-6-27 13:36:38

C# WinForm視窗系統托盤

注:本程式是在VS2005基礎上寫的。 1。如果不想讓程式在工作列中顯示,請把窗體的屬性ShowInTaskbar設定為false; 2。如果想讓程式啟動時就最小化,請設定窗體的屬性WindowState設定為Minimized。(Minimized 最小化,Normal正常

C# WinForm視窗系統托盤右擊托盤圖示彈出退出選單

1. 在Form上加notifyicon控制元件myIcon,為控制元件的屬性Icon新增一個icon圖示, Text為滑鼠在圖示上時顯示的名字。 2. 新增ContextMenuStrip控制元件myMenu,右鍵托盤圖示彈出選單,設定myIcon的ContextMen

Winform托盤

1.先將Notifyicon控制元件拖入主窗體中 2.設定Text和icon屬性 3.設定雙擊托盤圖示後的方法 private void notifyIcon1_MouseDoubleClick(object sender, Mo

winform托盤、右下角彈框提示

 1、視窗【×】關閉按鈕變為最小化,並在托盤提示資訊 一般有些管理系統,為了防止客戶隨意關閉程式或者基於其他原因,一般會把 視窗【×】關閉按鈕變為最小化,如大家熟悉的飛信、MSN等等,但是有些不是很熟悉的客戶,最小化到托盤的時候,卻不知道程式到了那裡去了,因此,最小化的時候,伴

C#Winform 托盤,隱藏當前專案

</pre><pre class="plain" name="code" code_snippet_id="108369" snippet_file_name="blog_20131211_1_6723383"> 拖入notifyIcon控制元件,然

Python:程式托盤功能實現

  本文講解如何裝python的開發的命令列程式最小化到托盤的方法,並提供選單操作功能。   上個月使用python實現了一個多功能抓圖工具,見《Python:一個多功能的抓圖工具開發(附原始碼)》,此程式為一個命令列程式,windows下執行時會彈出一個cmd視窗,裡面什

MFC對話方塊托盤程式設計實現步驟

以工程為例說明過程:此程式程式設計環境是VS2008,在除錯過程中,將字符集修改為“使用多位元組字符集”(專案->屬性->配置屬性->字符集)。 例如新建一個MFC對話方塊工程Dialogtest,程式實現的功能是,修改對話方塊標題欄上預設的圖示,在程式中改為新增的資源

C#如何實現窗體托盤

經常看見QQ和網易雲音樂等主流軟體都可以把介面縮到托盤,然後還能在氣泡上右擊出現選單進行操作,感覺帥爆了,自己就上網研究了一下 正文 1.如何實現窗體最小化到托盤 第一步:在需要縮到托盤的主介面新增一個控制元件 新增之後如下: 第二步:選擇系統托盤圖示 執行效果: 左

C# winform 開機自啟動時托盤 單擊顯示窗體,右擊顯示選單

拉一個NotifyIcon控制元件notifyIcon1,為控制元件notifyIcon1的屬性Icon新增一個icon圖示。 新增一個ContextMenuStrip控制元件,然後設定notifyIcon1的屬性ContextMenuStrip為你新增的contextMe

總結:一個簡單的MFC實現托盤效果

先上說明,最後我會附上程式碼,我也是臨時新學的,請諸位指正 對於標頭檔案中的CxxxDlg類定義而言,需要新增以下幾個地方,見下圖 對於上圖中的最下面的public部分,略作解釋 NOTIFYICONDATA m_nid; //新增成員變數 afx_msg LRESUL

【C#】窗體托盤(WinForm和WPF)

下面以WPF為例 新建WPF專案Test,主窗體MainWindow.xaml,在後臺MainWindow.xaml.cs填寫下面的程式碼。然後就能實現最小化到托盤的功能。 //引用根據需要新增,可以去除不必要的引用 using System; using Sy

解決winform中mdi子窗體載入時顯示最大化按鈕的方法

場景:在mid載入子窗體的時候如果指定WindowState為Maximized,載入完成後主窗體會顯示最大化、最小化、關閉的按鈕圖示。 解決方法: 1.更改主窗體FormMain的屬性。制定MainMenuStrip的屬性為menuStrip1控制元件。menuStrip1控制元件就是主窗體上的選單欄。