整理 點選最小化時把視窗放在系統托盤中的方法

2021-08-31 02:21:40 字數 935 閱讀 6878

所謂的「托盤」,在windows系統介面中,指的就是下面任務條右側,有系統時間等等的標誌的那一部分。在程式最小化或掛起時,但有不希望佔據工作列的時候,就可以把程式放到托盤區。

一 、原理

1、最小化的原理:首先要將視窗隱藏,然後 在右下角繪製圖示。

2、恢復的原理:將視窗顯示,再將托盤中的刪除。

二、**實現

1、自定義訊息wm_showtask: #define wm_showtask (wm_user +1)/*為了防止使用者定義的訊息id與系統的訊息id衝突,ms定義了乙個巨集wm_user,小於wm_user的id被系統使用,大於wm_user的id被使用者使用。所以是wm_user +1 */

2、在mfc的::onsyscommand(uint nid, lparam lparam)函式體中增加乙個命令響應

void cmyframe::onsyscommand(uint nid, lparam lparam) else trace("--- cmyframe::onsyscommand /n"); }

3、在begin_message_map(cmyframe, cmdichildwnd)和end_message_map()中間中新增如下**

on_message(wm_showtask,onshowtask)

其中wm_showtask是訊息名,onshowtask是自己定義的訊息響應函式,後面有說明。

4、最小化到托盤函式

void cmyframe::totray()

5、恢復介面函式

在標頭檔案中定義訊息響應函式afx_msg lresult onshowtask(wparam wparam,lparam lparam) ;

//wparam接收的是圖示的id,而lparam接收的是滑鼠的行為

6、刪除托盤圖示函式

void cmyframe::deletetray()

Outlook2007 最小化時隱藏到托盤區

outlook2007最小化時隱藏到托盤區 outlook啟動後最小化總是在工作列上佔乙個位置,工作起來礙事,所以希望最小化時可以隱藏到托盤區,以下方法可以幫你實現 一 1.開啟登錄檔hkey current user software microsoft office 12.0 outlook p...

最小化安裝 Ubuntu

ubuntu 的預設安裝方式或許並不為所有使用者所接受。譬如說吧,有的使用者並不想使用 gnome 桌面環境,也有的使用者並不需要預先安裝的所有軟體。為了解決上述諸如此類的問題,在安裝最小化的 ubuntu 的基礎上,根據各人之喜好執行定製化安裝,可能是較好的折中方案。首先,安裝 ubuntu 基本...

經驗風險最小化

前面提到,機器學習的目的就是根據一些訓練樣本 尋找乙個最優的函式,使得函式對輸入 x的估計y 與實際輸出y之間的期望風險 可以暫時理解為誤差 最小化。期望風險最小化 依賴於樣本的輸入 x與其輸出 y之間的函式對映關係f x,y 而這個對映關係,在機器視覺和模式識別系統中,一般指代先驗概率和類條件概率...