资源简介
CtabSheet源代码 可以很方便的使用tab控件创建属性页,具体的过程可参考
http://www.vckbase.com/document/viewdoc/?id=398
代码片段和文件信息
//#include “StdAfx.h“
//#include “TabSheet.h“
//
//TabSheet::TabSheet(void)
//{
//}
//
//TabSheet::~TabSheet(void)
//{
//}
// 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;
m_bHideTab=FALSE;
}
CTabSheet::~CTabSheet()
{
m_arrayStatusTab.RemoveAll();
m_pPages.RemoveAll();
m_IDD.RemoveAll();
m_title.RemoveAll();
}
BEGIN_MESSAGE_MAP(CTabSheet CTabCtrl)
//{{AFX_MSG_MAP(CTabSheet)
ON_WM_LBUTTONDOWN()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CTabSheet message handlers
//将字符串从半角转到全角(bDBC=FALSE)或从全角转到半角(bDBC=TRUE)
CString strConv(const CString& strIn BOOL bDBC /* = TRUE*/)
{
CString strTmp = strIn;
LPTSTR szText;
if(!strTmp.IsEmpty())
{
szText = strTmp.GetBuffer(0);
size_t nLen = _tcslen(szText);
if(bDBC)
{
for(size_t i=0;i {
if(12288==szText[i])
szText[i] = 32;
else
{
if(szText[i]>65280 && szText[i]<65375)
szText[i] -= 65248;
}
}
}
else
{
for(size_t i=0;i {
if(32==szText[i])
szText[i] = 12288;
else
{
if(szText[i]<127)
szText[i] += 65248;
}
}
}
strTmp.ReleaseBuffer();
}
return strTmp;
}
BOOL CTabSheet::AddPage(LPCTSTR title CDialog *pDialog UINT ID int nImage)
{
int iIndex = static_cast( m_pPages.Add(pDialog) );
m_IDD.Add(ID);
//m_title.Add(title);
m_title.Add(strConv(titleFALSE));//将标签的标题字符串全部转化成全角字符,以便标签在左或右时标题能够竖直排列
m_pPages[iIndex]->Create( m_IDD[iIndex] this );
InsertItem( iIndex m_title[iIndex] nImage );
SetRect(iIndex);
m_pPages[iIndex]->ShowWindow(iIndex ? SW_HIDE : SW_SHOW);
//** the initial status is enabled
m_arrayStatusTab.Add(TRUE);
return TRUE;
}
void CTabSheet::SetRect(int iIndex)
{
ASSERT(iIndex < m_pPages.GetCount());
CRect tabRect itemRect;
int nX nY nXc nYc;//左、顶、宽、高
GetClientRect(&tabRect);//获取整个TAB控件的位置大小。
GetItemRect(0 &itemRect);//item指的只是标签页,因此这里是获得标签页的位置大小
if (m_bHideTab)
{
nX=tabRect.left;//使用tabRect.left、tabRect.top即可将各页显示的子对话框遮住TAB控件的标签。
nY=tabRect.top;
nXc=tabRe
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 11466 2009-09-08 22:04 CTabSheet\TabSheet.cpp
文件 2420 2009-09-08 22:04 CTabSheet\TabSheet.h
目录 0 2012-04-20 10:44 CTabSheet\
相关资源
- 微型伺服马达原理与控制.doc
- 远控小木马
- VCA820可控增益放大器
- PVCS Professional
- maven+ssm+shiro
- 计算机网络课程设计实验报告
- ssh项目demo
- Spring MVC +Spring + Mybatis 构建分库分表源
- Struts——一种开源MVC的实现外文文献
- 显示Visual Studio 2008(VS2008)试用版序
- 静止无功补偿器
- MVC架构模式ppt课件
- msvcp140d.dll
- VC 实现非窗口类中使用定时器的方法
- 基于TMS320VC5509芯片的语音采集系统
- OpenCv2 轮廓提取源代码VS2008
- VC二维码生成
- RVDS4.0 破解 (win7可用)
- VCD烂碟COPY VCD烂碟COPY
- 周立功USBCAN二次开发套件库-供vc开发
- vimicro VC0703
- VC通过文件头格式判断文件的真实格式
- SSM框架以及Spring、SpringMVC、MyBatis分别
- 经典MVC登录代码
- DevExpress VCL 18.2.5 Full Sources and DxAutoI
- EosCtrl 控件应用VC
- 基于spring+springmvc+hibernate的全注解开发
- VCA820_PCB
- VC Ctreectrl树节点后面添加图标
- spring-mvc-4.0.xsd
评论
共有 条评论