TrayIcon.h 869 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. #ifndef __UITRAICON_H__
  2. #define __UITRAICON_H__
  3. #pragma once
  4. #include <ShellAPI.h>
  5. namespace DuiLib
  6. {
  7. class UILIB_API CTrayIcon
  8. {
  9. public:
  10. CTrayIcon(void);
  11. ~CTrayIcon(void);
  12. public:
  13. void CreateTrayIcon( HWND _RecvHwnd, UINT _IconIDResource, LPCTSTR _ToolTipText = NULL, UINT _Message = NULL);
  14. void DeleteTrayIcon();
  15. bool SetTooltipText(LPCTSTR _ToolTipText);
  16. bool SetTooltipText(UINT _IDResource);
  17. CDuiString GetTooltipText() const;
  18. bool SetIcon(HICON _Hicon);
  19. bool SetIcon(LPCTSTR _IconFile);
  20. bool SetIcon(UINT _IDResource);
  21. HICON GetIcon() const;
  22. void SetHideIcon();
  23. void SetShowIcon();
  24. void RemoveIcon();
  25. bool Enabled(){return m_bEnabled;};
  26. bool IsVisible(){return !m_bVisible;};
  27. private:
  28. bool m_bEnabled;
  29. bool m_bVisible;
  30. HWND m_hWnd;
  31. UINT m_uMessage;
  32. HICON m_hIcon;
  33. NOTIFYICONDATA m_trayData;
  34. };
  35. }
  36. #endif //