📄 cooltabctrl.h
字号:
////////////////////////////////////////////////////////////////
// CoolTabCtrl.h : header file //
// //
// Copyright 2001 WangJun //
// All Rights Reserved. //
// //
// Email: wangjun98@sohu.com //
// URL: www.vckbase.com //
// //
// 1.0 2001/9/30 First release version. //
// //
////////////////////////////////////////////////////////////////
#if !defined(AFX_COOLTABCTRL_H__83DD41F0_25C9_417D_9353_777A80FAD1CF__INCLUDED_)
#define AFX_COOLTABCTRL_H__83DD41F0_25C9_417D_9353_777A80FAD1CF__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#define TCS_UP 0x0001 ///向上
#define TCS_DOWN 0x0002 ///向下
#define TCS_MONOSPACE 0x0004 ///等宽效果
#define TCS_ANIMATE 0x0008 ///窗口拉动的动画效果
#define TCS_MASK 0x000f ///掩码:所有类型值相"或",供程序内部使用
/////////////////////////////////////////////////////////////////////////////
// CCoolTabCtrl window
class CCoolTabCtrl : public CWnd
{
public:
class CPageItem
{
friend class CCoolTabCtrl;
CWnd* m_pWnd; ///窗口,可以为NULL
UINT m_nStyle; ///窗口类型,0:普通,1:动态创建
CString m_sText; ///文字
HICON m_hIcon; ///图标
public:
CRect m_rect;
public:
void SetPageStyle(UINT nStyle)
{
m_nStyle = nStyle;
}
UINT GetAreaWidth(CDC *pDC);
void Draw(CDC *pDC,UINT nStyle,BOOL bActive);
};
DECLARE_DYNCREATE(CCoolTabCtrl)
// Construction
public:
CCoolTabCtrl();
// Attributes
public:
// Operations
public:
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CCoolTabCtrl)
//}}AFX_VIRTUAL
// Implementation
public:
void SetStyleMonoSpace(BOOL bEnable = TRUE);
void SetStyleDirection(int Direction); ///Direction取值:TCS_UP,TCS_DOWN
void SetStyleAnimate(BOOL bEnable = TRUE); ///允许动画bEnable = TRUE,否则为FALSE
void UpdateWindow();
BOOL m_bEraseBkgnd;
UINT GetStyle();
void SetStyle(UINT style);
void DrawFrame(CDC *pDC);
void* GetPageItem(UINT nIndex);
void SetActivePage(int nIndex);
BOOL AddPage(CRuntimeClass* pClass,UINT nIDTemplate,LPCTSTR sText,UINT IconID = NULL);
CPageItem* AddPage(CWnd *pWnd,LPCTSTR sText,UINT IconID = NULL);
void AutoSize();
void GetClientRect(LPRECT lpRect );
BOOL Create(UINT wStyle, const CRect & rect, CWnd * pParentWnd, UINT nID);
virtual ~CCoolTabCtrl();
// Generated message map functions
protected:
//{{AFX_MSG(CCoolTabCtrl)
afx_msg void OnPaint();
afx_msg BOOL OnEraseBkgnd(CDC* pDC);
afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
afx_msg void OnSizing(UINT fwSide, LPRECT pRect);
afx_msg void OnSize(UINT nType, int cx, int cy);
afx_msg void OnTimer(UINT nIDEvent);
afx_msg BOOL OnNotify( WPARAM wParam, LPARAM lParam, LRESULT* pResult );
afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
afx_msg void OnDestroy();
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
private:
CFont m_font;
int m_nActivePage;
UINT m_nStyle;
UINT m_nBorder;
CPtrList m_PageList;
};
/////////////////////////////////////////////////////////////////////////////
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_COOLTABCTRL_H__83DD41F0_25C9_417D_9353_777A80FAD1CF__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -