1. 将控件CTabCtrl拖放到CDialog中
2. 右键点击控件,选择"Add Variable" 添加全局变量,此例中变量命名为m_TabCtrl
3. 在::OnInitDialog()函数中 用.InsertItem()方法添加分页
例如:m_TabCtrl.InsertItem(0,"特征训练");
m_TabCtrl.InsertItem(1,"搜索定位");
4. 为每个分页建立分页Dialog,分页Dialog的Style属性改为Child,Border属性改为None,同时调整分页Dialog的大小与实际显示的大小匹配,以方便继续完善分页
此例添加两个分页,ID分别为 ID_DialogTrain , ID_DialogRun
5. 双击新建的分页Dialog(或者右键单击选择"Add Class"),为该分页添加类名,此例中类名分别为CDlgTrain,CDlgRun,编译器自动生成相应的.h头文件
6. 在主窗体的头文件用引用上一步生成的头文件
#include "CDlgTrain.h"
#include "CDlgTrain.h"
7. 在主窗体的类定义中添加第五步生成的类的对象声明
public:
CDlgTrain m_DlgTrain
CDlgRun m_DlgRun
8. 在::OnInitDialog()函数中,添加上一步建立的对象的建立代码
m_DlgTrain..Create(ID_DialogTrain,&m_TabCtrl);
m_DlgRun..Create(ID_DialogRun,&m_TabCtrl);
9. 在::OnInitDialog()函数中,添加代码,进一步调整分页Dialog的显示位置及大小
//获得IDC_TABTEST客户区大小
CRect rs;
m_ctrlTab.GetClientRect(&rs);
//调整子对话框在父窗口中的位置
rs.top+= 20;
rs.left+=1;
rs.right-=2;
//设置子对话框尺寸并移动到指定位置
m_dlgTrain.MoveWindow(&rs);
m_dlgRun.MoveWindow(&rs);
m_TabCtrl.SetCurSel(0);
m_dlgTrain.ShowWindow(true);
10. 建立控件消息
双击CTabCtrl,在生成的控件消息函数中添加
switch(m_TabCtrl.GetCurSel())
{
case 0:
m_dlgTrain.ShowWindow(true);
m_dlgRun.ShowWindow(false);
break;
case 1:
m_dlgTrain.ShowWindow(false);
m_dlgRun.ShowWindow(true);
break;
default:
break;
}