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

对话框与窗口

开发平台:

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. #if !defined(AFX_GUITABWND_H__4C966B28_CE7A_407D_9A7A_9BE7A80B395D__INCLUDED_)
  23. #define AFX_GUITABWND_H__4C966B28_CE7A_407D_9A7A_9BE7A80B395D__INCLUDED_
  24. #if _MSC_VER > 1000
  25. #pragma once
  26. #endif // _MSC_VER > 1000
  27. // TabWnd.h : header file
  28. //
  29. /////////////////////////////////////////////////////////////////////////////
  30. // CTabWnd window
  31. #include "GuiDrawlayer.h"
  32. //*********************************************************
  33. class GUILIBDLLEXPORT  CGuiTabWnd : public CWnd
  34. {
  35. // Construction
  36. public:
  37. //************************************************
  38. CGuiTabWnd();
  39. virtual ~CGuiTabWnd();
  40. //************************************************
  41. enum Style{S3D=0,FLAT=1,SHADOW=2};
  42. enum AlingTab{ALN_TOP=0,ALN_BOTTOM=1};
  43. enum TypeTab{TYPE_NORMAL=0,TYPE_MDI=1};
  44. public:
  45. virtual BOOL PreTranslateMessage(MSG* pMsg);
  46. virtual BOOL Create(DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID);
  47. public:
  48. //***********************************************************************
  49. void SetStyle(Style estyle);
  50. void    SetTypeTab(TypeTab Type=TYPE_NORMAL);
  51. void virtual Drawtabs(CDC* dc);
  52. void Addtab(CWnd* pParent,CString lpMsg,UINT uIcon);
  53. void SetImageList(UINT nBitmapID, int cx, int nGrow, COLORREF crMask);
  54. void RecalLayout();
  55. virtual void AjustTabs();
  56. void    SetCurtab(int m_numtab);
  57. int     GetCurtab();
  58. void    DeleteTab(int m_numTab);
  59. void ShowTitle(CString m_Caption);
  60. CWnd*   GetActiveWnd () const;
  61. CWnd*   GetNumWnd(int m_numtab)  const;
  62. int     GetCount(){return m_Numtabs;}
  63. void SetActualTitle(BOOL bActual);
  64. void    SetALingTabs(AlingTab alnTab);
  65. BOOL FindItem(HWND hWnd);
  66. void    UpdateCaption(CWnd* pWnd,CString m_Title);
  67. void    SetTabsTitle(int iTabNr, CString sNewTitle);
  68. void    SetTabMenu(UINT nMENU,int nNumTab=0);
  69. virtual void StyleDispl(DWORD dwDsp=GUISTYLE_XP)
  70. {m_StyleDisplay=dwDsp;SendMessage(WM_NCPAINT);Invalidate(); UpdateWindow();}
  71. DWORD m_StyleDisplay;
  72. //***********************************************************************
  73. protected:
  74. TypeTab m_TypeTab;
  75. BOOL m_ActualTitle;
  76. CPtrArray m_pArray;
  77. CSize m_sizeImag;
  78. int m_Numtabs;
  79. int m_iMinValRec;
  80. int m_ActualVar;
  81. int m_iSelectTab;
  82. CRect m_rectCliente;
  83. CRect m_rectTab;
  84. CToolTipCtrl CToolTip;
  85. CImageList Image;
  86. CFont m_cfont;
  87. CFont m_cfontBold;
  88. BOOL m_style;
  89. GuiDrawLayer m_wd;
  90. CWnd* pParent;
  91. AlingTab m_alnTab;
  92. BOOL m_InTab;
  93. protected:
  94. //{{AFX_MSG(CGuiTabWnd)
  95. afx_msg BOOL OnEraseBkgnd(CDC* pDC);
  96. afx_msg void OnPaint();
  97. afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
  98. afx_msg void OnSize(UINT nType, int cx, int cy);
  99. afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
  100. afx_msg void OnSysColorChange( );
  101. afx_msg void OnRButtonDown(UINT nFlags, CPoint point);
  102. //}}AFX_MSG
  103. DECLARE_MESSAGE_MAP()
  104. protected:
  105. virtual BOOL OnNotify(WPARAM wParam, LPARAM lParam, LRESULT* pResult);
  106. public:
  107. afx_msg void OnDestroy();
  108. };
  109. /////////////////////////////////////////////////////////////////////////////
  110. //{{AFX_INSERT_LOCATION}}
  111. // Microsoft Visual C++ will insert additional declarations immediately before the previous line.
  112. #endif // !defined(AFX_GUITABWND_H__4C966B28_CE7A_407D_9A7A_9BE7A80B395D__INCLUDED_)