为何我是使用标签控件时,他的位置跑掉了`
我创建了两个对话框类,可怎么执行完位置跑其他地方了?
我用了这个:void CMyTab1::OnSelchangingTab2(NMHDR* pNMHDR, LRESULT* pResult)
{
// TODO: Add your control notification handler code here
CRect rect;
GetClientRect(rect); //获取客户区域
rect.DeflateRect(1,30,2,2);
int cursel=this-> GetCurSel(); //获取当前标签索引
switch (cursel)
{
case 0: {
m_pCalculation-> ShowWindow(SW_HIDE); //隐藏计算控制窗口
m_pResult-> ShowWindow(SW_HIDE);//隐藏结果显示窗口
m_pParameters-> MoveWindow(rect);
m_pParameters-> ShowWindow(SW_SHOW);//显示参数设置窗口
break;
}
case 1: {
m_pParameters-> ShowWindow(SW_HIDE);//隐藏参数设置窗口
m_pResult-> ShowWindow(SW_HIDE);//隐藏结果显示窗口
m_pCalculation-> MoveWindow(rect);
m_pCalculation-> ShowWindow(SW_SHOW);//显示计算控制窗口
break;
}
case 2:{
m_pParameters-> ShowWindow(SW_HIDE);//隐藏参数设置窗口
m_pCalculation-> ShowWindow(SW_HIDE);//隐藏计算控制窗口
m_pResult-> MoveWindow(rect);
m_pResult-> ShowWindow(SW_SHOW);//显示结果显示窗口
break;
}
}
*pResult = 0;
}
在初始化函数中又用了这个:
//添加标签页
m_tab1.InsertItem(0, "参数设置 ");
m_tab1.InsertItem(1, "计算控制 ");
m_tab1.InsertItem(2, "结果显示 ");
CParameters* m_pParameters=new CParameters();
m_tab1.m_pParameters=m_pParameters;
m_pParameters-> Create(IDD_Parameters,&m_tab1);
CCalculation* m_pCalculation=new CCalculation();
m_tab1.m_pCalculation=m_pCalculation;
m_pCalculation-> Create(IDD_Calculation,&m_tab1);
CResult* m_pResult=new CResult();
m_tab1.m_pResult=m_pResult;
m_pResult-> Create(IDD_Result,&m_tab1);
CRect rect;
m_tab1.GetClientRect(rect);
rect.InflateRect(-1,-30,-2,-2);
m_pCalculation-> MoveWindow(rect);
m_pCalculation-> ShowWindow(SW_SHOW);
错么?
[解决办法]
能不能说清楚点哦