关于CTabCtrl的使用
我想在CTabCtrl类中使用一个Dialog模板,
当我利用资源里的对话框模板创建一个CDialog后
然后把它加CTabCtrl的Item中 怎么什么都没显示。
[解决办法]
还要把对话框移到tabctrl上正确的位置才行
例如:
//创建两个对话框
m_page1.Create(IDD_DIALOG1, &m_tab);
m_page2.Create(IDD_DIALOG2, &m_tab);
//设定在Tab内显示的范围
CRect rc;
m_tab.GetClientRect(rc);
//下面坐标自己看情况调整
rc.top += 20;
rc.bottom -= 8;
rc.left += 8;
rc.right -= 8;
//注意: 移到适当位置才能看得到
m_page1.MoveWindow(&rc);
m_page2.MoveWindow(&rc);
[解决办法]
TC_ITEM TabCtrlItem;
TabCtrlItem.mask = TCIF_TEXT;
TabCtrlItem.pszText = "1 ";
m_ctrlTab.InsertItem(0, &TabCtrlItem);
TabCtrlItem.pszText = "2 ";
m_ctrlTab.InsertItem(1, &TabCtrlItem);
TabCtrlItem.pszText = "3 ";
m_ctrlTab.InsertItem(2, &TabCtrlItem);
m_dlg1.Create(IDD_DIALOG1, &m_ctrlTab);
m_dlg1.SetWindowPos(&wndTop, 3, 25, 0, 0, SWP_NOSIZE | SWP_SHOWWINDOW);
m_dlg2.Create(IDD_DIALOG2, &m_ctrlTab);
m_dlg2.SetWindowPos(&wndTop, 3, 25, 0, 0, SWP_NOSIZE | SWP_HIDEWINDOW);
m_dlg3.Create(IDD_DIALOG3, &m_ctrlTab);
m_dlg3.SetWindowPos(&wndTop, 3, 25, 0, 0, SWP_NOSIZE | SWP_HIDEWINDOW);
m_dlg1,m_dlg2,m_dlg3定义成全局变量。
m_ctrlTab是控件类型的变量。
[解决办法]
http://msdn2.microsoft.com/EN-US/library/awh5x2d4(VS.80).aspx