RTSplitterWnd.h
上传用户:qhonly
上传日期:2013-06-10
资源大小:487k
文件大小:2k
源码类别:

界面编程

开发平台:

Visual C++

  1. #pragma once
  2. // CRTSplitterWnd
  3. class CRTSplitterWnd : public CWnd
  4. {
  5. DECLARE_DYNAMIC(CRTSplitterWnd)
  6. public:
  7. CRTSplitterWnd();
  8. virtual ~CRTSplitterWnd();
  9. protected:
  10. CRect m_SplitterRect;
  11. int   m_SplitterWidth;
  12. CSize   m_SplitterSize;
  13. BOOL  m_IsSelSplitter;
  14. CPoint m_MouseDownPoint;
  15. CWnd* m_Child[2];
  16. BOOL m_IsVertical;
  17. static CBitmap* m_SplitterBitmap[5];
  18. static UINT     m_SplitterBitmapDrawMode[5];
  19. static BOOL     m_IsEnableSkin;
  20. CImageList *m_ImageList;
  21. static HCURSOR     m_VerCursor;
  22. static HCURSOR     m_HorCursor;
  23. DECLARE_MESSAGE_MAP()
  24. public:
  25. void SetVertical(CWnd* pLeft, CWnd* pRight, int LeftWidth = 200, int RightWidth = -1);
  26. void SetHorizoncal(CWnd* pTop, CWnd* pBottom, int TopWidth = 200, int BottomWidth = -1);
  27. static void EnableSkin(BOOL IsEanble = TRUE);
  28. static void RTSetCursor(HCURSOR hVerCursor,HCURSOR hHorCursor);
  29. afx_msg void OnSize(UINT nType, int cx, int cy);
  30. void RTSize();
  31. protected:
  32. virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
  33. public:
  34. BOOL Create(DWORD dwStyle,const RECT &rect,CWnd* pParentWnd,UINT nID,CCreateContext *pContext = NULL);
  35. afx_msg BOOL OnEraseBkgnd(CDC* pDC);
  36. afx_msg void OnPaint();
  37. afx_msg void OnMouseMove(UINT nFlags, CPoint point);
  38. afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
  39. afx_msg void OnLButtonUp(UINT nFlags, CPoint point);
  40. afx_msg void OnLButtonDblClk(UINT nFlags, CPoint point);
  41. static void SetBitmap(CBitmap* pBitmaps[], UINT DrawMode[]);
  42. protected:
  43. virtual BOOL OnNotify(WPARAM wParam, LPARAM lParam, LRESULT* pResult);
  44. public:
  45. afx_msg BOOL OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message);
  46. afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
  47. };