TaskbarNotifier.h
上传用户:maryhy001
上传日期:2007-05-02
资源大小:2317k
文件大小:2k
源码类别:

网格计算

开发平台:

Visual C++

  1. // CTaskbarNotifier Header file
  2. // By John O'Byrne - 05 July 2002
  3. #pragma once
  4. #define WM_TASKBARNOTIFIERCLICKED WM_USER+123
  5. #define TN_TEXT_NORMAL 0x0000
  6. #define TN_TEXT_BOLD 0x0001
  7. #define TN_TEXT_ITALIC 0x0002
  8. #define TN_TEXT_UNDERLINE 0x0004
  9. // CTaskbarNotifier
  10. class CTaskbarNotifier : public CWnd
  11. {
  12. DECLARE_DYNAMIC(CTaskbarNotifier)
  13. public:
  14. CTaskbarNotifier();
  15. virtual ~CTaskbarNotifier();
  16. int Create(CWnd *pWndParent);
  17. void Show(LPCTSTR szCaption,DWORD dwTimeToShow=500,DWORD dwTimeToStay=3000,DWORD dwTimeToHide=500,int nIncrement=1);
  18. void Hide();
  19. BOOL SetSkin(UINT nBitmapID,short red=-1,short green=-1,short blue=-1);
  20. BOOL SetSkin(LPCTSTR szFileName,short red=-1,short green=-1,short blue=-1);
  21. void SetTextFont(LPCTSTR szFont,int nSize,int nNormalStyle,int nSelectedStyle);
  22. void SetTextColor(COLORREF crNormalTextColor,COLORREF crSelectedTextColor);
  23. void SetTextRect(RECT rcText);
  24. CWnd *m_pWndParent;
  25. CFont m_myNormalFont;
  26. CFont m_mySelectedFont;
  27. COLORREF m_crNormalTextColor;
  28. COLORREF m_crSelectedTextColor;
  29. HCURSOR m_hCursor;
  30. CBitmap m_biSkinBackground;
  31. HRGN m_hSkinRegion;
  32. CRect m_rcText;
  33. int m_nSkinWidth;
  34. int m_nSkinHeight;
  35. CString m_strCaption;
  36. BOOL m_bMouseIsOver;
  37. int m_nAnimStatus;
  38.   DWORD m_dwTimeToShow;
  39. DWORD m_dwTimeToLive;
  40. DWORD m_dwTimeToHide;
  41. DWORD m_dwDelayBetweenShowEvents;
  42. DWORD m_dwDelayBetweenHideEvents;
  43. int m_nStartPosX;
  44. int m_nStartPosY;
  45. int m_nCurrentPosX;
  46. int m_nCurrentPosY;
  47. int m_nTaskbarPlacement;
  48. int m_nIncrement;
  49. protected:
  50. BYTE* Get24BitPixels(HBITMAP pBitmap, WORD *pwWidth, WORD *pwHeight);
  51. HRGN GenerateRegion(HBITMAP hBitmap, BYTE red, BYTE green, BYTE blue);
  52. protected:
  53. DECLARE_MESSAGE_MAP()
  54. public:
  55. afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
  56. afx_msg void OnDestroy();
  57. afx_msg BOOL OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message);
  58. afx_msg void OnMouseMove(UINT nFlags, CPoint point);
  59. afx_msg void OnLButtonUp(UINT nFlags, CPoint point);
  60. afx_msg LRESULT OnMouseHover(WPARAM w, LPARAM l);
  61. afx_msg LRESULT OnMouseLeave(WPARAM w, LPARAM l);
  62. afx_msg BOOL OnEraseBkgnd(CDC* pDC);
  63. afx_msg void OnPaint();
  64. afx_msg void OnTimer(UINT nIDEvent);
  65. };