VC中Tab控件简略使用

VC中Tab控件简单使用

MFCTab控件可以使多个对话框有效地进行分页。

 

下面就来讲讲具体的步骤:

 

1.创建主对话框后,在对话框中加入Tab控件。假设控件IDIDC_TAB1,并添加变量为m_Tab

 

2.在资源中添加两个对话框资源(这里以分两页为例)。对话框属性设置中borderNonestyle设为childID定为IDD_PAGE1IDD_PAGE2。再分别给两个对话框创建相应的类CPage1CPage2

 

3.在主对话框头文件中添加这两个对话框类的头文件。并定义CPage1 m_Page1; CPage2 m_Page2;

 

4.在主对话框的初始化函数中添加如下代码:

m_tab.InsertItem(0,_T("第一页"));

m_tab.InsertItem(0,_T(""));

m_Page1.Create(IDD_PAGE1,GetDlgItem(IDC_TAB1));

m_Page2.Create(IDD_PAGE2,GetDlgItem(IDC_TAB1));

//获得IDC_TAB1客户区大小

CRect rs;

m_tab.GetClientRect(&rs);

rs.top+=40;

rs.bottom-=10;

rs.left+=10;

rs.right-=10;

//设置自对话框尺寸并移动到指定位置

m_Page1.MoveWindow(&rs);

m_Page2.MoveWindow(&rs);

//分别设置隐藏和显示

m_Page1.ShowWindow(true);

m_Page2.ShowWindow(false);

 

5.添加点击Tab分页事件处理程序:

void CTestWinMobileDlg::OnTcnSelchangeTab1(NMHDR *pNMHDR, LRESULT *pResult)

{

switch(m_tab.GetCurSel())

{

case 0:

m_Page1.ShowWindow(true);

m_Page2.ShowWindow(false);

break;

case 1:

m_Page1.ShowWindow(false);

m_Page2.ShowWindow(true);

break;

default:

;

}

*pResult = 0;

}