GuiToolButton.h
上传用户:wlkj888
上传日期:2022-08-01
资源大小:806k
文件大小:3k
源码类别:

对话框与窗口

开发平台:

Visual C++

  1. /****************************************************************************
  2.  * *  
  3.  * GuiToolKit   *
  4.  *  (MFC extension) *  
  5.  * Created by Francisco Campos G. www.beyondata.com fcampos@beyondata.com *
  6.  *--------------------------------------------------------------------------*    
  7.  * *
  8.  * This program is free software;so you are free to use it any of your *
  9.  * applications (Freeware, Shareware, Commercial),but leave this header *
  10.  * intact. *
  11.  * *
  12.  * These files are provided "as is" without warranty of any kind. *
  13.  * *
  14.  *        GuiToolKit is forever FREE CODE !!!!! *
  15.  * *
  16.  *--------------------------------------------------------------------------*
  17.  * Created by: Francisco Campos G. *
  18.  * Bug Fixes and improvements : (Add your name) *
  19.  * -Francisco Campos *
  20.  * *
  21.  ****************************************************************************/
  22. #pragma once
  23. // CGuiToolButton
  24. class GUILIBDLLEXPORT   CGuiToolButton : public CButton
  25. {
  26. DECLARE_DYNAMIC(CGuiToolButton)
  27. public:
  28. CGuiToolButton();
  29. virtual ~CGuiToolButton();
  30. public:
  31. void SetToolTip(LPCTSTR szToolTip);
  32. void SetCaption(CString szCaption);
  33. void SethIcon(HICON hIcon);
  34. void SetColor(COLORREF clColor);
  35. void RecalSize();
  36. void ShowDark(BOOL bShow);
  37. CSize GetSizeButton();
  38.     void ShowMenu();
  39. void SetScrollButton(BOOL bScroll=TRUE);
  40. void SetSimpleButton(BOOL bSimple=TRUE){m_bSimple=bSimple;};
  41. void SetFontColor(COLORREF clrFont);
  42. virtual void StyleDispl(DWORD dwDsp=GUISTYLE_XP,BOOL bTransParent=TRUE)
  43. {m_StyleDisplay=dwDsp;
  44. m_Transparent=bTransParent;
  45. SendMessage(WM_NCPAINT);Invalidate(); UpdateWindow();}
  46. DWORD m_StyleDisplay;
  47. BOOL m_Transparent;
  48. protected:
  49. CToolTipCtrl m_toolTip;
  50. HICON  m_Icon;
  51. CSize  m_SizeImage;
  52. CSize  m_SizeText;
  53. CString  m_szText;
  54. COLORREF  m_clColor;
  55. BOOL  m_bMouserOver;
  56. BOOL  m_ReposWindow;
  57. CSize  m_szButton;
  58. BOOL  m_bShowDark;
  59. BOOL  m_ScrollButton;
  60. COLORREF  m_clrFont;
  61. BOOL  m_bSimple;
  62. public:
  63. HMENU  m_hMenu;
  64. protected:
  65. DECLARE_MESSAGE_MAP()
  66. public:
  67. virtual void DrawItem(LPDRAWITEMSTRUCT /*lpDrawItemStruct*/);
  68. afx_msg BOOL OnEraseBkgnd(CDC* pDC);
  69. afx_msg void OnLButtonUp(UINT nFlags, CPoint point);
  70. afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
  71. afx_msg void OnMouseMove(UINT nFlags, CPoint point);
  72. afx_msg void OnTimer(UINT nIDEvent);
  73. virtual BOOL PreTranslateMessage(MSG* pMsg);
  74. virtual void PreSubclassWindow();
  75. afx_msg void OnSysColorChange( );
  76. };