如何像QQ一樣操作Winform程序?
-Begin-
前言
QQ和微信作為日常使用最廣的CS客戶端程序,可能我們以后習(xí)慣了這種操作:
點(diǎn)擊最小化,將程序最小化到任務(wù)欄中
點(diǎn)擊關(guān)閉,并不是真的關(guān)閉,而是縮小到托盤里
從托盤中找到圖標(biāo),雙擊,將程序展示出來(lái)
從托盤中找到圖標(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è)雙擊事件,在雙擊事件中,將程序顯示出來(lái),代碼如下:
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、目前這種情況是無(wú)法關(guān)閉程序的,所以需要給NotifyIcon組件添加一個(gè)右鍵菜單,從工具箱中,添加一個(gè)ContextMenuStrip組件,然后添加兩個(gè)Item,分別是打開軟件tsm_Open和關(guān)閉軟件tsm_Exit。

6、打開軟件代碼比較簡(jiǎn)單,具體如下:
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)最小化到托盤及托盤右鍵菜單。
發(fā)表評(píng)論
請(qǐng)輸入評(píng)論內(nèi)容...
請(qǐng)輸入評(píng)論/評(píng)論長(zhǎng)度6~500個(gè)字
圖片新聞
-

OpenAI發(fā)布的AI瀏覽器,市場(chǎng)為何反應(yīng)強(qiáng)烈?
-

馬云重返一線督戰(zhàn),阿里重啟創(chuàng)始人模式
-

機(jī)器人奧運(yùn)會(huì)戰(zhàn)報(bào):宇樹機(jī)器人摘下首金,天工Ultra搶走首位“百米飛人”
-

存儲(chǔ)圈掐架!江波龍起訴佰維,索賠121萬(wàn)
-

長(zhǎng)安汽車母公司突然更名:從“中國(guó)長(zhǎng)安”到“辰致科技”
-

豆包前負(fù)責(zé)人喬木出軌BP后續(xù):均被辭退
-

字節(jié)AI Lab負(fù)責(zé)人李航卸任后返聘,Seed進(jìn)入調(diào)整期
-

員工持股爆雷?廣汽埃安緊急回應(yīng)
最新活動(dòng)更多
-
11月7日立即參評(píng)>> 【評(píng)選】維科杯·OFweek 2025(第十屆)物聯(lián)網(wǎng)行業(yè)年度評(píng)選
-
11月20日立即報(bào)名>> 【免費(fèi)下載】RISC-V芯片發(fā)展現(xiàn)狀與測(cè)試挑戰(zhàn)-白皮書
-
即日-11.25立即下載>>> 費(fèi)斯托白皮書《柔性:汽車生產(chǎn)未來(lái)的關(guān)鍵》
-
11月27日立即報(bào)名>> 【工程師系列】汽車電子技術(shù)在線大會(huì)
-
11月28日立即下載>> 【白皮書】精準(zhǔn)洞察 無(wú)線掌控——283FC智能自檢萬(wàn)用表
-
12月18日立即報(bào)名>> 【線下會(huì)議】OFweek 2025(第十屆)物聯(lián)網(wǎng)產(chǎn)業(yè)大會(huì)
推薦專題
- 1 特斯拉工人被故障機(jī)器人打成重傷,索賠3.6億
- 2 AI 時(shí)代,阿里云想當(dāng)“安卓” ,那誰(shuí)是“蘋果”?
- 3 拐點(diǎn)已至!匯川領(lǐng)跑工控、埃斯頓份額第一、新時(shí)達(dá)海爾賦能扭虧為盈
- 4 L3自動(dòng)駕駛延期,逼出車企技術(shù)自我淘汰
- 5 隱退4年后,張一鳴久違現(xiàn)身!互聯(lián)網(wǎng)大佬正集體殺回
- 6 機(jī)器人9月大事件|3家國(guó)產(chǎn)機(jī)器人沖刺IPO,行業(yè)交付與融資再創(chuàng)新高!
- 7 谷歌“香蕉”爆火啟示:國(guó)產(chǎn)垂類AI的危機(jī)還是轉(zhuǎn)機(jī)?
- 8 7倍機(jī)器人大牛股:高管股東套現(xiàn)VS機(jī)構(gòu)兇猛抱團(tuán),該信誰(shuí)?
- 9 八部門聯(lián)手放行L3自動(dòng)駕駛!巨頭開始拼搶萬(wàn)億市場(chǎng)?
- 10 OpenAI發(fā)布的AI瀏覽器,市場(chǎng)為何反應(yīng)強(qiáng)烈?
- 高級(jí)軟件工程師 廣東省/深圳市
- 自動(dòng)化高級(jí)工程師 廣東省/深圳市
- 光器件研發(fā)工程師 福建省/福州市
- 銷售總監(jiān)(光器件) 北京市/海淀區(qū)
- 激光器高級(jí)銷售經(jīng)理 上海市/虹口區(qū)
- 光器件物理工程師 北京市/海淀區(qū)
- 激光研發(fā)工程師 北京市/昌平區(qū)
- 技術(shù)專家 廣東省/江門市
- 封裝工程師 北京市/海淀區(qū)
- 結(jié)構(gòu)工程師 廣東省/深圳市


分享





