VS2010 MFC中tab control使用方法
阿新 • • 發佈:2019-01-27
1、在已有工程中新增tab contr控制元件
2、為tab control控制元件新增變數m_tabctrl
3. 在CXXXDlg類中的對話方塊初始化函式OnInitDialog裡面新增如下程式碼:
//添加選項卡
m_tabctrl.InsertItem(0,_T("頁面1"));//“選項卡1”可更改,是sheet頁的名字;
m_tabctrl.InsertItem(1,_T("頁面2"));
m_tabctrl.InsertItem(2,_T("頁面3"));
4、在資源視圖裡的Dialog,點選"Dialog”右鍵,選擇"插入Dialog”,插入三個Dialog, ID分別命名為IDD_DIALOG1, IDD_DIALOG2,
IDD_DIALOG3. 每個Dialog的屬性中,style為Child, Border為None, 寬度調整下 . 再分別為其新增對應的基於CDialog類CDialog1,
CDialog2,CDialog3
5、在CXXXDlg.h中新增以上三個類的標頭檔案 CDialog1.h CDialog2.h CDialog3.h
6、在CXXXDlg.h中依次新增三個成員變數m_para1, m_para2,m_para3,如下:
CDialog1 m_para1; CDialog2 m_para2; CDialog3 m_para3; //建立畫面 m_para1.Create(IDD_DIALOG1, &m_tabctrl); m_para2.Create(IDD_DIALOG2, &m_tabctrl); m_para3.Create(IDD_DIALOG3, &m_tabctrl);
7、//獲得tabcontrol客戶區大小
CRect rs; m_tabctrl.GetClientRect(&rs); //調整子對話方塊在父視窗中的位置,可以改動數值,使子窗體的大小合適; rs.top+=20; rs.bottom-=3; rs.left+=2; rs.right-=2; //設定子對話方塊尺寸並移動到指定位置 m_para1.MoveWindow(&rs); m_para2.MoveWindow(&rs); m_para3.MoveWindow(&rs); //分別設定隱藏和顯示 m_para1.ShowWindow(true); m_para2.ShowWindow(false); m_para3.ShowWindow(false); //設定預設的選項卡 m_tabMain.SetCurSel(0);
7. 在資源檢視中,雙擊Tab Control,新增事件處理程式
// TODO: 在此新增控制元件通知處理程式程式碼
m_para1.ShowWindow(false);
m_para2.ShowWindow(false);
m_para3.ShowWindow(false);
int CurSel = m_tabMain.GetCurSel();
switch(CurSel)
{
case 0:
m_para1.ShowWindow(true);
break;
case 1:
m_para2.ShowWindow(true);
break;
case 2:
m_para3.ShowWindow(true);
break;}*pResult = 0;