mpBaseData :对话框1
mpForceGrid :对话框2
pHoldBase :static1控件
pHoldForce :static1控件
CWnd* pHoldBase = GetDlgItem(IDC_STATIC_BASE); //static1控件
CWnd* pHoldForce = GetDlgItem(IDC_STATIC_FORCE); //static2控件
if (pHoldBase && pHoldForce)
{
if (mpBaseData || mpForceGrid)
{
mpBaseData->DestroyWindow(); DeletePtr(mpBaseData);
mpForceGrid->DestroyWindow(); DeletePtr(mpForceGrid);
}
mpBaseData = DlgToolBoxTool::CreateDlgBaseData(nodeMainTtype, pHoldBase); CheckPtr(mpBaseData);//动态创建对话框
mpForceGrid = DlgToolBoxTool::CreateDlgForceGrid(nodeMainTtype, pHoldForce); CheckPtr(mpForceGrid);//动态创建对话框
//< 子对话框填充Static
//占位控件适应对话框大小控件
CRect rectBase;
CRect rectForce;
mpBaseData->GetClientRect(rectBase);
mpForceGrid->GetClientRect(rectForce);
pHoldBase->SetWindowPos(NULL, 0, 0, rectBase.right, rectBase.bottom, SWP_NOZORDER | SWP_NOMOVE);
pHoldForce->SetWindowPos(NULL, 0, 0, rectForce.right, rectForce.bottom, SWP_NOZORDER | SWP_NOMOVE);
//移动控件位置
CRect rectHoldBase;
CRect rectHoldForce;
pHoldBase->GetWindowRect(rectHoldBase);
pHoldForce->GetWindowRect(rectHoldForce);
ScreenToClient(rectHoldBase);
//使上下两个控件预留出间隙
pHoldForce->MoveWindow(rectHoldBase.left, rectHoldBase.bottom + 10, rectHoldForce.right - rectHoldForce.left, rectHoldForce.bottom - rectHoldForce.top, TRUE);
mpBaseData->ShowWindow(TRUE);
mpForceGrid->ShowWindow(TRUE);
}