您好,登錄后才能下訂單哦!
VC中的Tab控件調(diào)用與VB、C++buider有點(diǎn)不一樣。在VB或C++builder中,添加標(biāo)簽的時(shí)候,同時(shí)創(chuàng)建了頁面窗口。在VC中,添加頁標(biāo)簽時(shí),要自己創(chuàng)建無邊框窗口,嵌入到Tab控件中。步驟如下:
1、在主窗口上,放上Tab控件,并創(chuàng)建關(guān)聯(lián)變量m_tab
2、在資源中,創(chuàng)建兩個(gè)無邊框窗口,創(chuàng)建相應(yīng)的窗體類Dlg_page1,Dlg_Page2,這兩個(gè)類分別繼承于CDialogEx或CDialog類。
窗口屬性為:Border:None,Style:Child
3、在主窗口中包含dlgpage1.h、dlgpage2.h頭件,添加成員變量:
DlgPage1 m_page1;
DlgPage2 m_page2;
4、在主窗的啟動函數(shù)中添加代碼
BOOL DlgThird::OnInitDialog() { CDialogEx::OnInitDialog(); m_tab1.InsertItem(0,_T("設(shè)置")); m_tab1.InsertItem(1,_T("權(quán)限")); m_page1.Create(IDD_PAGE1,&m_tab1); m_page2.Create(IDD_PAGE2,&m_tab1); CRect rs; m_tab1.GetClientRect(&rs); //調(diào)整子對話框在父窗口中的位置 rs.top += 25; rs.bottom -= 4; rs.left += 1; rs.right -= 4; //設(shè)置子對話框尺寸并移動到指 定位置 m_page1.MoveWindow(&rs); m_page2.MoveWindow(&rs); m_page1.ShowWindow(SW_SHOW); m_page2.ShowWindow(SW_HIDE); m_tab1.SetCurSel(0); return TRUE; } //Tab控件響應(yīng)鼠標(biāo)選擇消息代碼 void DlgThird::OnTcnSelchangeTab(NMHDR *pNMHDR, LRESULT *pResult) { int CurSel = m_tab1.GetCurSel(); CRect rc; m_tab1.GetClientRect(&rc); switch(CurSel) { case 0: m_page1.ShowWindow(true); m_page2.ShowWindow(false); break; case 1: m_page1.ShowWindow(false); m_page2.ShowWindow(true); break; default: ; *pResult = 0; } }
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。