2009年4月6日 星期一

以Windows Form實現視窗最小化至通知區域

  1. 建立一個Windows Form專案
  2. 替專案加入一個Notify Icon控制項

  3. 替Notify ICON控制項加入一個圖示("ICON"),必須為ico格式,可以利用ToYcon製作。
    若沒有製作的話,會無法在通知區域顯示該圖示。
    並且替Notify ICON控制項設定"Text"以及"Name"

  4. 替NotifyICON設定項加入一個"DoubleClick事件",並加入下述程式碼
  5. private void notifyIcon1_DoubleClick(object sender, EventArgs e)
    {
        if (this.WindowState == FormWindowState.Minimized)
        {
            this.ShowInTaskbar = true;          // 顯示在系統任務欄
            this.WindowState = FormWindowState.Normal;      // 還原視窗
            notifyIcon1.Visible = false;         //Notify Icon圖示隱藏
        }
    }
    
  6. 替Form加入一個"SizeChanged事件",並加入下述程式碼
  7. private void Form1_SizeChanged(object sender, EventArgs e)
    {
        if (this.WindowState == FormWindowState.Minimized)  // 目前視窗是否為最小化
        {
            this.ShowInTaskbar = false;     //不顯示在系統任務欄
            notifyIcon1.Visible = true;      //Notify Icon圖示顯示
        }
    }
    

這樣就完成了,可以執行測試看看。
點選視窗最小化的時候,可以把視窗縮小到系統通知區。
在系統通知區內點兩次程式的ICON,就可以恢復視窗程式了!

範例程式下載:


ToYcon v0.6下載:

沒有留言:

張貼留言