訂閱
糾錯(cuò)
加入自媒體

如何像QQ一樣操作Winform程序?

-Begin-

前言

QQ和微信作為日常使用最廣的CS客戶端程序,可能我們以后習(xí)慣了這種操作:

點(diǎn)擊最小化,將程序最小化到任務(wù)欄中

點(diǎn)擊關(guān)閉,并不是真的關(guān)閉,而是縮小到托盤里

從托盤中找到圖標(biāo),雙擊,將程序展示出來

從托盤中找到圖標(biāo),右擊,退出,才是真正的退出程序

今天跟大家分享一下,Winform程序?qū)崿F(xiàn)最小化到托盤及托盤右鍵菜單。

實(shí)現(xiàn)

1、首先假設(shè)已經(jīng)開發(fā)好了應(yīng)用程序,從工具箱中,找到一個(gè)組件叫NotifyIcon,拖放到主窗體中。

2、點(diǎn)擊NotifyIcon組件,右側(cè)屬性中,修改Icon和Text,改成你需要設(shè)置的內(nèi)容。

3、主窗體添加一個(gè)FormClosing事件,在該事件中編寫代碼如下:

      private void FrmMain_FormClosing(object sender, FormClosingEventArgs e)
       {
           if (realClose == false)
           {
               this.WindowState = FormWindowState.Minimized;
               //隱藏任務(wù)欄區(qū)圖標(biāo)
               this.ShowInTaskbar = false;    
               e.Cancel = true;
           }
       }

realClose是一個(gè)全局字段,表示是否真的關(guān)閉,默認(rèn)值是False,這樣直接點(diǎn)擊關(guān)閉時(shí),并不是真的關(guān)閉程序,而且縮小到托盤。

4、給NotifyIcon組件添加一個(gè)雙擊事件,在雙擊事件中,將程序顯示出來,代碼如下:

      private void notifyIcon1_MouseDoubleClick(object sender, MouseEventArgs e)
       {
           if (WindowState == FormWindowState.Minimized)
           {
               //還原窗體顯示    
              this. WindowState = FormWindowState.Normal;
               //激活窗體并給予它焦點(diǎn)
               this.Activate();
               //任務(wù)欄區(qū)顯示圖標(biāo)
               this.ShowInTaskbar = true;
           }
       }

5、目前這種情況是無法關(guān)閉程序的,所以需要給NotifyIcon組件添加一個(gè)右鍵菜單,從工具箱中,添加一個(gè)ContextMenuStrip組件,然后添加兩個(gè)Item,分別是打開軟件tsm_Open和關(guān)閉軟件tsm_Exit。

6、打開軟件代碼比較簡單,具體如下:

      private void tsm_Open_Click(object sender, EventArgs e)
       {
           if (WindowState == FormWindowState.Minimized)
           {
               //還原窗體顯示    
               this.WindowState = FormWindowState.Normal;
               //激活窗體并給予它焦點(diǎn)
               this.Activate();
           }
       }

7、退出軟件首先是將realClose置位True,然后調(diào)用this.Close方法即可。

      private void tsm_Exit_Click(object sender, EventArgs e)
       {
           realClose = true;
           this.Close();
       }

至此,就實(shí)現(xiàn)了Winform程序?qū)崿F(xiàn)最小化到托盤及托盤右鍵菜單。

聲明: 本文由入駐維科號(hào)的作者撰寫,觀點(diǎn)僅代表作者本人,不代表OFweek立場。如有侵權(quán)或其他問題,請(qǐng)聯(lián)系舉報(bào)。

發(fā)表評(píng)論

0條評(píng)論,0人參與

請(qǐng)輸入評(píng)論內(nèi)容...

請(qǐng)輸入評(píng)論/評(píng)論長度6~500個(gè)字

您提交的評(píng)論過于頻繁,請(qǐng)輸入驗(yàn)證碼繼續(xù)

  • 看不清,點(diǎn)擊換一張  刷新

暫無評(píng)論

暫無評(píng)論

人工智能 獵頭職位 更多
掃碼關(guān)注公眾號(hào)
OFweek人工智能網(wǎng)
獲取更多精彩內(nèi)容
文章糾錯(cuò)
x
*文字標(biāo)題:
*糾錯(cuò)內(nèi)容:
聯(lián)系郵箱:
*驗(yàn) 證 碼:

粵公網(wǎng)安備 44030502002758號(hào)