TOOLTIPWND.H
上传用户:lvjun8202
上传日期:2013-04-30
资源大小:797k
文件大小:3k
源码类别:

SNMP编程

开发平台:

C/C++

  1. #if !defined(AFX_TOOLTIPWND_H__2C52D3E4_2F5B_11D2_8FC9_000000000000__INCLUDED_)
  2. #define AFX_TOOLTIPWND_H__2C52D3E4_2F5B_11D2_8FC9_000000000000__INCLUDED_
  3. #if _MSC_VER >= 1000
  4. #pragma once
  5. #endif // _MSC_VER >= 1000
  6. // ToolTipWnd.h : header file
  7. //
  8. // Written by Shankar (sshank@mailcity.com)
  9. // Last Revised : August 29 1998.
  10. // Copyright (c) 1998.
  11. //
  12. // This file is provided "as is" with no expressed or implied warranty.
  13. // The author accepts no liability if it causes any damage whatsoever.
  14. // Distribute freely.
  15. // Send bug reports, bug fixes, enhancements. You can reach 
  16. // me at sshank@mailcity.com
  17. // Acknowledgements:
  18. // Thanks to Venkatesh who helped me in calculating the intersecting 
  19. // point in the ellipse.
  20. /////////////////////////////////////////////////////////////////////////////
  21. // CToolTipWnd window
  22. struct BTOOLINFO {
  23. HWND hwndTool;
  24. CString strToolText;
  25. COLORREF clrToolTextClr;
  26. };
  27. class CToolTipWnd : public CWnd
  28. {
  29. private:
  30. // Construction
  31. LPCTSTR lpWndCls;
  32. public:
  33. CToolTipWnd();
  34. CRect m_rcCurrFit;
  35. CPoint  m_ptCur;
  36. // Attributes
  37. public:
  38. void RelayEvent(LPMSG);
  39. BOOL Create(CWnd*);
  40. bool m_bStuck;
  41. void AddTool(CWnd *pWnd, CString strText, COLORREF clrTextColor=NULL);
  42. void SetWidth(int iWidth) { m_iWidth = iWidth; }
  43. void SetHeight(int iHeight) { m_iHeight = iHeight; }
  44. void SetBkColor(COLORREF clrRef) { m_clrBkColor = clrRef; }
  45. void SetFrameColor(COLORREF clrRef) { m_clrFrameColor = clrRef; }
  46. void SetDefTextColor(COLORREF clrRef) { m_clrTextColor = clrRef; }
  47. void SetFontHeight(int iHeight) { m_iFontHeight = iHeight; }
  48. void SetFontName(CString strFontName) { m_strFontName = strFontName; }
  49. private:
  50. CRgn rgn;
  51. CRgn rgnComb;
  52. CRgn rgnTri;
  53. CRect m_RectText;
  54. CFont m_fontText;
  55. CString m_strText;
  56. bool m_bMouseIn;
  57. COLORREF m_clrTextColor;
  58. COLORREF m_clrBkColor;
  59. COLORREF m_clrFrameColor;
  60. CMapPtrToPtr m_ToolPtr;
  61. int m_iWidth;
  62. int m_iHeight;
  63. int m_iFontHeight;
  64. CString m_strFontName;
  65. HWND m_hParentWnd;
  66. public:
  67. // Overrides
  68. // ClassWizard generated virtual function overrides
  69. //{{AFX_VIRTUAL(CToolTipWnd)
  70. public:
  71. virtual BOOL PreTranslateMessage(MSG* pMsg);
  72. //}}AFX_VIRTUAL
  73. // Implementation
  74. public:
  75. virtual ~CToolTipWnd();
  76. // Generated message map functions
  77. protected:
  78. //{{AFX_MSG(CToolTipWnd)
  79. afx_msg void OnPaint();
  80. afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
  81. afx_msg void OnTimer(UINT nIDEvent);
  82. afx_msg void OnShowWindow(BOOL bShow, UINT nStatus);
  83. //}}AFX_MSG
  84. DECLARE_MESSAGE_MAP()
  85. };
  86. /////////////////////////////////////////////////////////////////////////////
  87. //{{AFX_INSERT_LOCATION}}
  88. // Microsoft Developer Studio will insert additional declarations immediately before the previous line.
  89. #endif // !defined(AFX_TOOLTIPWND_H__2C52D3E4_2F5B_11D2_8FC9_000000000000__INCLUDED_)