托盤製作心得

2021-04-25 05:53:23 字數 1870 閱讀 1873

製作的主要涉及到的

api只有

shell_notifyicon 雖然

api只有乙個,但是這個

api的引數的資料結構可是看的讓人很煩的。

notifyicondata

typedef struct _notifyicondata ;

tchar szinfotitle[64];//tip

視窗標題

dword dwinfoflags;

guid guiditem;

} notifyicondata, *pnotifyicondata;

定義乙個成員變數用於存放

notifyicondata

結構,然後在

oninitdialog

裡面建立托盤,在

onclose

裡面刪除托盤圖示,新增自定義訊息來處理滑鼠在托盤上的單擊訊息。在訊息中

showwindow(sw_show)

**如下:

oninitdialog

m_nid

.cbsize=sizeof(m_nid);

m_nid

.hwnd=this->m_hwnd;

m_nid

.hicon=

//wcscpy_s(m_nid.szinfotitle,20,text("warkey"));

m_nid

.uflags=nif_icon|nif_message|nif_info|nif_tip;

wcscpy

(m_nid.sztip,text("jasonm warkey"));

wcscpy_s

(m_nid.szinfotitle,5,text("提示"

));

m_nid

.ucallbackmessage=wm_myshowwindow;

m_nid

.utimeout= 10;

wcscpy_s

(m_nid.szinfo,100,text("jasonm製作"

));

m_nid

.dwinfoflags=niif_info;

::shell_notifyicon

(nim_add, &m_nid);

onclose

voidcmywarkeydlg

::onclose()

處理自定義訊息

:afx_msglresult

cmywarkeydlg

::onshowmywindow(wparamwparam, lparamlparam)

return1;

}

製作托盤閃爍

using system using system.drawing using system.windows.forms using system.componentmodel using system.collections using system.io using system.xml usi...

delphi製作的托盤程式

unit umain inte ce uses windows,messages,sysutils,classes,graphics,controls,forms,dialogs,shellapi,menus,buttons,extctrls const mousemsg wm user 1 iid...

delphi製作的托盤程式

unit umain inte ce uses windows,messages,sysutils,classes,graphics,controls,forms,dialogs,shellapi,menus,buttons,extctrls const mousemsg wm user 1 iid...