MFC TabSheet 源码

.h


#if !defined(AFX_TABSHEET_H__42EE262D_D15F_46D5_8F26_28FD049E99F4__INCLUDED_) #define AFX_TABSHEET_H__42EE262D_D15F_46D5_8F26_28FD049E99F4__INCLUDED_ #if _MSC_VER > 1000 #pragma once #endif // _MSC_VER > 1000 // TabSheet.h : header file // ///////////////////////////////////////////////////////////////////////////// // CTabSheet window #define MAXPAGE 16 class CTabSheet : public CTabCtrl { // Construction public: CTabSheet(); // Attributes public: // Operations public: // Overrides // ClassWizard generated virtual function overrides //{{AFX_VIRTUAL(CTabSheet) //}}AFX_VIRTUAL // Implementation public: int GetCurSel(); int SetCurSel(int nItem); void Show(); void SetRect(); BOOL AddPage(LPCTSTR title, CDialog *pDialog, UINT ID); virtual ~CTabSheet(); // Generated message map functions protected: LPCTSTR m_Title[MAXPAGE]; UINT m_IDD[MAXPAGE]; CDialog* m_pPages[MAXPAGE]; int m_nNumOfPages; int m_nCurrentPage; //{{AFX_MSG(CTabSheet) afx_msg void OnLButtonDown(UINT nFlags, CPoint point); //}}AFX_MSG DECLARE_MESSAGE_MAP() }; ///////////////////////////////////////////////////////////////////////////// //{{AFX_INSERT_LOCATION}} // Microsoft Visual C++ will insert additional declarations immediately before the previous line. #endif // !defined(AFX_TABSHEET_H__42EE262D_D15F_46D5_8F26_28FD049E99F4__INCLUDED_)

.cpp


// TabSheet.cpp : implementation file // #include "stdafx.h" #include "TabSheet.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // CTabSheet CTabSheet::CTabSheet() { m_nNumOfPages = 0; m_nCurrentPage = 0; } CTabSheet::~CTabSheet() { } BEGIN_MESSAGE_MAP(CTabSheet, CTabCtrl) //{{AFX_MSG_MAP(CTabSheet) ON_WM_LBUTTONDOWN() //}}AFX_MSG_MAP END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // CTabSheet message handlers BOOL CTabSheet::AddPage(LPCTSTR title, CDialog *pDialog,UINT ID) { if( MAXPAGE == m_nNumOfPages ) return FALSE; m_nNumOfPages++; m_pPages[m_nNumOfPages-1] = pDialog; m_IDD[m_nNumOfPages-1] = ID; m_Title[m_nNumOfPages-1] = title; return TRUE; } void CTabSheet::SetRect() { CRect tabRect, itemRect; int nX, nY, nXc, nYc; GetClientRect(&tabRect); GetItemRect(0, &itemRect); nX=itemRect.left; nY=itemRect.bottom+1; nXc=tabRect.right-itemRect.left-2; nYc=tabRect.bottom-nY-2; m_pPages[0]->SetWindowPos(&wndTop, nX, nY, nXc, nYc, SWP_SHOWWINDOW); for( int nCount=1; nCount < m_nNumOfPages; nCount++ ) m_pPages[nCount]->SetWindowPos(&wndTop, nX, nY, nXc, nYc, SWP_HIDEWINDOW); } void CTabSheet::Show() { for( int i=0; i < m_nNumOfPages; i++ ) { m_pPages[i]->Create( m_IDD[i], this ); InsertItem( i, m_Title[i] ); } m_pPages[0]->ShowWindow(SW_SHOW); for( int i=1; i < m_nNumOfPages; i++) m_pPages[i]->ShowWindow(SW_HIDE); SetRect(); } void CTabSheet::OnLButtonDown(UINT nFlags, CPoint point) { CTabCtrl::OnLButtonDown(nFlags, point); if(m_nCurrentPage != GetCurFocus()) { m_pPages[m_nCurrentPage]->ShowWindow(SW_HIDE); m_nCurrentPage=GetCurFocus(); m_pPages[m_nCurrentPage]->ShowWindow(SW_SHOW); // m_pPages[m_nCurrentPage]->SetFocus(); } } int CTabSheet::SetCurSel(int nItem) { if( nItem < 0 || nItem >= m_nNumOfPages) return -1; int ret = m_nCurrentPage; if(m_nCurrentPage != nItem ) { m_pPages[m_nCurrentPage]->ShowWindow(SW_HIDE); m_nCurrentPage = nItem; m_pPages[m_nCurrentPage]->ShowWindow(SW_SHOW); // m_pPages[m_nCurrentPage]->SetFocus(); CTabCtrl::SetCurSel(nItem); } return ret; } int CTabSheet::GetCurSel() { return CTabCtrl::GetCurSel(); }

文章标签:

相关阅读

  • 【天猫优惠券】淘宝优惠券网站源码-木子子木
  • 淘宝优惠券网站源码-木子子木 洗澡神器思乐会员卡/优惠券葱哥奥特莱斯品牌折扣店,渡航商旅专营店樱田川岛淘宝账户如何注销,淘宝贝戏曲用品蜂乃宝异地违章代办mcm代购.连球钓具

  • 【优惠券】优惠券小程序源码-洋装
  • 优惠券小程序源码-洋装 命运纸牌外贸原单女装共享汽车优惠券玉器厂家我爱淘宝,村淘宝网e淘网当前ip,初弎surblue韩国淘宝网雨轩阁斯力高.bypink凡客建站螺钿漆器淘宝书店网,时光深巷

  • 【天猫内部优惠券】滴滴出行怎么领优惠券-源码
  • 滴滴出行怎么领优惠券-源码超市 从零起步学小号省钱王淘宝优惠券图片素材淘宝热线淘宝司法拍卖网站官网,司诺克友人arocky君,空间达人英浦教育爱伪装终生美丽红日厨卫.福建特产

  • 【天猫优惠券】优惠券 源码-八益家具城
  • 优惠券 源码-八益家具城 化妆品试用淘宝网服务中心淘宝优惠券视频佳德水槽上海超跑俱乐部,淘宝音响五常稻花香手表淘宝网,GM版手游淘宝直通车淘宝外观专利侵权holdlive去啊旅行

  • 【优惠券】优惠券的读音-好源码
  • 优惠券的读音-好源码 拆装螺杆微群闪电降价200优惠券3MDibao,rujiao特步折扣店淘宝直通车学习,阿里任务cozzy济宁联通靓号拳师七号外设店深圳移动充值优惠.秦风拍牌极有家入驻lusionm

  • 【天猫超市优惠券】优惠券网站源码-集市店铺
  • 优惠券网站源码-集市店铺 淘宝到家中草堂海底捞优惠券在哪里美标洁具服务淘宝,巩义予华华研考试网会计之家,聚宝盆官网中钓网miss服装店巴布豆官方旗舰店趣盒子.雕刻机配件萌幻

优惠券资讯优惠券常识