要實現系統托盤,就要認識notifyicondata結構體,如下:
typedef struct _notifyicondata ;
tchar szinfotitle[64]; //指向乙個以/0結束的字串的指標。字串的內容為氣球提示的標題
dword dwinfoflags; //設定此成員用來給氣球提示框增加乙個圖示,增加的圖示出現在氣球提示標題的左側
guid guiditem; //保留
hicon hballoonicon; //用於windows vista或更高版本的自定義氣球圖示
} notifyicondata, *pnotifyicondata;
操作步驟:
1.插入右擊托盤圖示彈出的選單資源,初始化選單選項
2.新增處理托盤圖示的自定義訊息:
lresult cmycomboboxdlg::ontraycallbackmsg(wparam wparam, lparam lparam)
//wparam接收的是圖示的id,而lparam接收的是滑鼠的行為
case wm_lbuttondblclk:
showwindow(sw_restore);
traymyicon(false);
break;
default:break;
}return 0;
}3.實現托盤:
bool cmycomboboxdlg::traymyicon(bool badd)
else
return bret;
}4.將對話方塊的關閉按鈕變成隱藏介面的效果,即要關閉按鈕不會關閉程式
在onsyscommand ()函式裡面新增
else if ((nid & 0xfff0) == sc_close) //觸發關閉按鈕
製作工作列托盤選單
1 準備乙個選單資源,並匯入乙個圖示資源 用作工作列上顯示的圖示 2 在你的程式中新增兩個變數,乙個是cmenu物件m menu,乙個是notifyicondata結構體物件m notifydata,這個結構體作用是 包含系統需要的用來傳遞托盤區域訊息的資訊 具體請查詢msdn 3 自定義乙個訊息,...
MFC 程式新增工作列托盤
新增資源 menu,如 idr menu1 標頭檔案新增 define wm tray msg wm user 1000 cmenu m traypopupmenu 選單 afx msg void onshowmenu 顯示主程式 afx msg void onexitmenu 退出 bool m ...
NotifyIcon製作工作列托盤選單
常用軟體飛信 qq在工作列中的圖示ico,以及滑鼠移動到圖示是右鍵選單選項 1 首先製作工作列圖示 this.showintaskbar true 2 窗體最小化時或者關閉時隱藏到工作列,有時候我們會選擇程式關閉時是退出程式還是隱藏到工作列 private void form1 sizechange...