程序托盤
我們做的很多程序都要求實現(xiàn)托盤功能,比如之前常用的qq或微信 等等。 本文以簡單的Demo來演示托盤程序
效果演示 ( 注:本案例用的是qq的圖標 )

素材準備
兩個** icon 格式 的圖片 (一個表示在線,一個表示離線)**,用來作為程序托盤的圖標
第一步:將 NotifyIcon 控件,拖到主窗體中,并在窗體中添加兩個按鈕(在線、離線)

第二步:將contextMenuStrip控件,拖到主窗體中
- 設(shè)置一個 **退出 **菜單 ( 用作,鼠標在托盤圖標右鍵菜單 )
- 雙擊 退出 ,自動生成單擊方法。 在方法中編寫代碼 this.Close(); 表示關(guān)閉程序
- 將上面的** notifyicon 控件**的 contextMenuStrip 屬性 ,設(shè)置為當前的 contextMenuStrip



第三步:在主窗體的 Form1_Load 方法中初始化 notifyicon的屬性
- 在項目中新建一個文件夾 ,重命名為 icon,用來存放使用到的ico 圖標*(放到資源管理中也行)*
- 在Form1_Load 方法中初始化 notifyicon的屬性

private void Form1_Load(object sender, EventArgs e)
{
// 初始化
this.notifyIcon1.Icon = new Icon(@"D:\\c#workspace\\練習(xí)demo\\托盤程序?qū)崿F(xiàn)\\icon\\qq彩色.ico");
this.notifyIcon1.Visible = true; //顯示圖標
this.notifyIcon1.Text = "在線"; // 鼠標懸浮圖標上時 提示文案
}
第四步:給主窗體添加一個 FormCloing 事件(表示關(guān)閉程序時可進入托盤)

private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
DialogResult result = MessageBox.Show("是否退出?選否,最小化到托盤", "操作提示", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question);
if (result == DialogResult.Yes)
{
this.Dispose();
Application.Exit();
}
else
{
e.Cancel = true;
this.WindowState = FormWindowState.Minimized;
this.Visible = false;
this.notifyIcon1.Visible = true;
}
}
第五步:給托盤圖標添加一個鼠標單擊事件,程序托盤后用來打開程序界面

private void notifyIcon1_MouseClick(object sender, MouseEventArgs e)
{
// 單擊左鍵,打開程序
if (e.Button == MouseButtons.Left)
{
this.Show();
this.Focus();
this.WindowState = FormWindowState.Normal;
}
}
第六步:添加 在線與離線按鈕的單擊事件,代碼邏輯如下
- 在線:將托盤圖標更換成表示 **在線 **的圖片
- 離線:將托盤圖標更換成表示 **離線 **的圖片
private void button1_Click(object sender, EventArgs e)
{
this.notifyIcon1.Icon = new Icon(@"D:\\c#workspace\\練習(xí)demo\\托盤程序?qū)崿F(xiàn)\\icon\\qq彩色.ico");
this.notifyIcon1.Text = "在線";
}
private void button2_Click(object sender, EventArgs e)
{
this.notifyIcon1.Icon = new Icon(@"D:\\c#workspace\\練習(xí)demo\\托盤程序?qū)崿F(xiàn)\\icon\\qq黑白色.ico");
this.notifyIcon1.Text = "離線";
}
完成以上步驟,托盤程序即可正常運行?。。?!
最后注意,托盤的圖標必須是 icon 格式的圖片?。?!
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。
舉報投訴
-
功能
+關(guān)注
關(guān)注
3文章
590瀏覽量
30128 -
程序
+關(guān)注
關(guān)注
117文章
3836瀏覽量
84728
發(fā)布評論請先 登錄
相關(guān)推薦
熱點推薦
《Visual C# 2008程序設(shè)計經(jīng)典案例設(shè)計與實現(xiàn)》---只能運行一次的托盤程序
《Visual C# 2008程序設(shè)計經(jīng)典案例設(shè)計與實現(xiàn)》---只能運行一次的托盤程序[hide][/hide]
發(fā)表于 05-13 19:24
《Visual C# 2008程序設(shè)計經(jīng)典案例設(shè)計與實現(xiàn)》---托盤動畫圖標程序
《Visual C# 2008程序設(shè)計經(jīng)典案例設(shè)計與實現(xiàn)》---托盤動畫圖標程序[hide][/hide]
發(fā)表于 05-13 19:40
榮小菜補鈣記第32期:LabVIEW之如何實現(xiàn)應(yīng)用程序最小化托盤
`榮小菜補鈣記第32期:LabVIEW之如何實現(xiàn)應(yīng)用程序最小化托盤 同步更新于 WeChat:榮小菜在補鈣大家好,我是榮小菜,也可以叫我Richie,本期分享的是讓程序具有最小化
發(fā)表于 05-15 14:37
Delphi教程之將程序圖標設(shè)置到Windows系統(tǒng)托盤
Delphi教程之將程序圖標設(shè)置到Windows系統(tǒng)托盤,很好的Delphi資料,快來下載吧。
發(fā)表于 04-11 15:59
?5次下載
《Visual C# 2008程序設(shè)計經(jīng)典案例設(shè)計與實現(xiàn)》---
《Visual C# 2008程序設(shè)計經(jīng)典案例設(shè)計與實現(xiàn)》---動態(tài)獲取當前程序的圖標
發(fā)表于 02-07 11:44
?0次下載
《Visual C# 2008程序設(shè)計經(jīng)典案例設(shè)計與實現(xiàn)》---
《Visual C# 2008程序設(shè)計經(jīng)典案例設(shè)計與實現(xiàn)》---托盤動畫圖標程序
發(fā)表于 02-07 11:43
?0次下載
《Visual C# 2008程序設(shè)計經(jīng)典案例設(shè)計與實現(xiàn)》---
《Visual C# 2008程序設(shè)計經(jīng)典案例設(shè)計與實現(xiàn)》---滾動字幕屏幕保護程序
發(fā)表于 02-07 11:40
?0次下載
《Visual C# 2008程序設(shè)計經(jīng)典案例設(shè)計與實現(xiàn)》---
《Visual C# 2008程序設(shè)計經(jīng)典案例設(shè)計與實現(xiàn)》---只能運行一次的托盤程序
發(fā)表于 02-07 12:30
?0次下載
《Visual C# 2008程序設(shè)計經(jīng)典案例設(shè)計與實現(xiàn)》---
《Visual C# 2008程序設(shè)計經(jīng)典案例設(shè)計與實現(xiàn)》---VisualC#2008與Web應(yīng)用程序
發(fā)表于 01-18 20:23
?0次下載
C語言教程之如何進行最簡單的C程序設(shè)計實現(xiàn)程序說明
本文檔的主要內(nèi)容詳細介紹的是C語言教程之如何進行最簡單的C程序設(shè)計實現(xiàn)程序說明。
發(fā)表于 11-02 10:53
?2次下載
RFID托盤實現(xiàn)物流倉儲墨水屏電子紙標簽可視化跟蹤系統(tǒng)的應(yīng)用體現(xiàn)
晨控智能將RFID電子標簽應(yīng)用于托盤上,對托盤進行智能化的管理,通過托盤標識的方式讓倉儲管理實現(xiàn)倉庫自動化、信息化、數(shù)字化管理。RFID技術(shù)倉儲物流
發(fā)表于 01-04 10:52
?1049次閱讀
RFID托盤標簽的介紹及應(yīng)用
RFID托盤標簽是一種專門用于托盤管理和物流追蹤的RFID標簽,它通過無線通信方式實現(xiàn)數(shù)據(jù)的自動采集和傳輸,廣泛應(yīng)用于倉儲、物流、供應(yīng)鏈管理等領(lǐng)域,可根據(jù)應(yīng)用環(huán)境要求選擇PVC材質(zhì)或ABS材質(zhì)或
RFID托盤標簽的應(yīng)用
RFID托盤標簽是一種專門用于物流和倉儲管理中托盤識別的電子標簽。它通過無線電波進行數(shù)據(jù)讀寫和物體識別,能夠實現(xiàn)非接觸式的數(shù)據(jù)交互。與傳統(tǒng)的條形碼相比,RFID托盤標簽具有更高的效率、
RFID托盤標簽在托盤智能管理中的應(yīng)用
岳冉RFID托盤標簽的應(yīng)用,以智能化、自動化、可視化為核心,為托盤管理注入全新動能,助力企業(yè)實現(xiàn)降本增效與數(shù)字化轉(zhuǎn)型,已成功應(yīng)用于汽車制造、冷鏈物流、醫(yī)藥倉儲、零售電商等領(lǐng)域。

C#-實現(xiàn)程序托盤

評論