1.插入三个对话框,ID为默认的IDD_DIALOG1、IDD_DIALOG2、IDD_DIALOG3。设定对话框属性Border:None Style:Child
2.双击对话框,为其添加类,CDlg1、CDlg2、CDlg3
3.在主对话框的头文件中添加对三个对话框类头文件的引用
1 #include "Dlg1" 2 #include "Dlg2" 3 #include "Dlg3"
4.在主对话框中添加三个变量:
1 CDlg1 m_dlg1; 2 3 CDlg2 m_dlg2; 4 5 CDlg3 m_dlg3;
5.主对话框中添加TabCtrl控件,ID为默认的IDC_TAB1,为其添加变量m_tab;
6.在OnInitDialog()函数中添加初始化代码:
(1)插入分页项并创建对话框:
1 m_tab.InsertItem(0,TEXT("参数一")); //添加参数一选项卡 2 m_tab.InsertItem(1,TEXT("参数二")); //添加参数二选项卡 3 m_tab.InsertItem(2,TEXT("结果")); //添加结果选项卡 4 5 m_dlg1.Create(IDD_DIALOG1,GetDlgItem(IDC_TAB1)); 6 m_dlg2.Create(IDD_DIALOG2,GetDlgItem(IDC_TAB1)); 7 m_dlg3.Create(IDD_DIALOG3,GetDlgItem(IDC_TAB1));
2:移动对话框到页面位置
1 //获得IDC_TABTEST客户区大小 2 CRect rs; 3 m_tab.GetClientRect(&rs); 4 //调整子对话框在父窗口中的位置 5 rs.top += 20; 6 rs.bottom -= 4; 7 rs.left += 4; 8 rs.right -= 4; 9 10 //设置子对话框尺寸并移动到指定位置 11 m_dlg1.MoveWindow(&rs); 12 m_dlg2.MoveWindow(&rs); 13 m_dlg3.MoveWindow(&rs); 14 15 //分别设置隐藏和显示 16 m_dlg1.ShowWindow(true); 17 m_dlg2.ShowWindow(false); 18 m_dlg3.ShowWindow(false); 19 20 //设置默认的选项卡 21 m_tab.SetCurSel(0);
(3)为CTabCtrl控件添加消息响应事件:TCN_SELCHAGE
1 int CurSel = m_tab.GetCurSel(); 2 switch(CurSel) 3 { 4 case 0: 5 m_dlg1.ShowWindow(true); 6 m_dlg2.ShowWindow(false); 7 m_dlg3.ShowWindow(false); 8 break; 9 case 1: 10 m_dlg1.ShowWindow(false); 11 m_dlg2.ShowWindow(true); 12 m_dlg3.ShowWindow(false); 13 break; 14 case 2: 15 m_dlg1.ShowWindow(false); 16 m_dlg2.ShowWindow(false); 17 m_dlg3.ShowWindow(true); 18 break; 19 default: 20 ; 21 }