Win32 下 建立 System Tray Applcation的方法

基本上在 System Tray 上的 程式 只是一個 notify icon,由 Win32 System 中的 Shell32.DLL 去實做,因此應用程式要使用Win32 API中的 Shell_NotifyIcon() 去在System Tray 上掛上一個 icon resource, 而關於這個 Icon Resource 的Handle是透過 NOTIFYICONDATA 結構傳遞地。
當成功掛上後,就會在 System Tray 上發現新增一個 Icon,但是此時應用程式的 GUI 還是出現在畫面上,因此就需要去使用ShowWindow(hWnd, SW_HIDE) 去隱藏應用程式,而在WndProc 中處理 WM_TRAYICON Message,當發生此訊息時 wParam 會是之前在 NOTIFYICONDATA 的 uID,用LOWWORE(lParam)去處理
WM_RBUTTONUP、WM_LBUTTONDBLCLK等訊息,可以得到一般常見的System Tray Application的效果
廣告

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com Logo

您的留言將使用 WordPress.com 帳號。 登出 / 變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 / 變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 / 變更 )

Google+ photo

您的留言將使用 Google+ 帳號。 登出 / 變更 )

連結到 %s

%d 位部落客按了讚: