GuiSplitter.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. // CGuiSplitter
  24. #include "GuiDrawlayer.h"
  25. class GUILIBDLLEXPORT   CGuiSplitter : public CWnd
  26. {
  27. DECLARE_DYNAMIC(CGuiSplitter)
  28. public:
  29. enum TYPEALING {ALINGHORZ=0,ALINGVERT=1};
  30. enum STYLESEPARATOR{STYLE3D=0,STYLEFLAT=1};
  31. void SetColor(COLORREF m_clrface);
  32. void AddLeftCtrl(CWnd* pWnd,long MinSize);
  33. void AddRightCtrl(CWnd* pWnd,long MinSize);
  34. void SeTypeALing(TYPEALING typeAling);
  35. void SetPixelWidht(int nSizePix);
  36. void RecalLayout();
  37. virtual void DrawSplitter(CRect rcSeparator,CRect rcLeft,CRect rcRight,CDC* pDC);
  38. void SetStyleSeparator(STYLESEPARATOR StyleSeparator=STYLE3D,COLORREF clrLeftTop=GuiDrawLayer::GetRGBColorBTNHigh(),
  39. COLORREF clrBottomRight=GuiDrawLayer::GetRGBColorShadow());
  40. public:
  41. CGuiSplitter();
  42. virtual ~CGuiSplitter();
  43. protected:
  44. COLORREF clrBg;
  45. CWnd* pWndLeft;
  46. CWnd* pWndRight;
  47. TYPEALING TypeAling;
  48. CRect m_rcSpplitter;
  49. int m_nSizePix;
  50. CRect m_rcSpplitterOld;
  51. BOOL bIniciaArrastre;
  52. STYLESEPARATOR mStyleSeparator;
  53. COLORREF mclrLeftTop;
  54. COLORREF mclrBottomRight;
  55. CRect m_rectLeft;
  56. CRect m_rectRight;
  57. protected:
  58. DECLARE_MESSAGE_MAP()
  59. public:
  60. afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
  61. virtual BOOL Create(CWnd* pParentWnd);
  62. afx_msg void OnPaint();
  63. afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
  64. afx_msg void OnLButtonUp(UINT nFlags, CPoint point);
  65. afx_msg void OnMouseMove(UINT nFlags, CPoint point);
  66. afx_msg void OnSize(UINT nType, int cx, int cy);
  67. afx_msg void OnSysColorChange();
  68. afx_msg BOOL OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message);
  69. };