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 }