MFC应用实例:[42]Tab Control选项卡
1、新建一个基于对话框的应用程序,应用程序名称为TabControl。
![MFC应用实例:[42]Tab Control选项卡](https://exp-picture.cdn.bcebos.com/d695563104ebf6a782b46898ffee1c324a184f13.jpg)
2、对对话框进行如下图的设计,添加一个Tab Control控件
![MFC应用实例:[42]Tab Control选项卡](https://exp-picture.cdn.bcebos.com/05aae8a75f0f822bab55f681c018512c8df14d13.jpg)
3、再添加两个对话框
![MFC应用实例:[42]Tab Control选项卡](https://exp-picture.cdn.bcebos.com/836a6aee1c324b18b397664253a7263349844813.jpg)
4、双击Tab Control控件添加其响应函数OnSelchangeTab1(),在OnSelchangeTab1()中添加一下代码:
void CTabControlDlg::OnSelchangeTab1(NMHDR* pNMHDR, LRESULT* pResult)
{
// TODO: Add your control notification handler code here
if(m_CurSelTab)
{
m_page1.ShowWindow(SW_SHOW);
m_page2.ShowWindow(SW_HIDE);
}
else
{
m_page1.ShowWindow(SW_HIDE);
m_page2.ShowWindow(SW_SHOW);
}
m_CurSelTab = 1 - m_CurSelTab;
*pResult = 0;
}
![MFC应用实例:[42]Tab Control选项卡](https://exp-picture.cdn.bcebos.com/506d92f1d8a72633ae3f2750c02c56ee7a7f4413.jpg)
5、在初始化函数OnInitDialog()中添加一下代码:
m_tab.InsertItem(0, _T("第一页"));
m_tab.InsertItem(1, _T("第二页"));
//创建两个对话框
m_page1.Create(IDD_DIALOG1, &m_tab);
m_page2.Create(IDD_DIALOG2, &m_tab);
//设定在Tab内显示的范围
CRect rc;
m_tab.GetClientRect(rc);
rc.top += 20;
rc.bottom -= 8;
rc.left += 8;
rc.right -= 8;
m_page1.MoveWindow(&rc);
m_page2.MoveWindow(&rc);
//显示初始页面
m_page1.ShowWindow(SW_SHOW);
m_page2.ShowWindow(SW_HIDE);
6、程序运行如下:
![MFC应用实例:[42]Tab Control选项卡](https://exp-picture.cdn.bcebos.com/cca2552c56ee7b7f6db596c66ef4fcf5ef0d4113.jpg)
![MFC应用实例:[42]Tab Control选项卡](https://exp-picture.cdn.bcebos.com/fdb4f00d3aceaad780d0e651eee7340f6578b813.jpg)