单文档视图下,正视图的子对话框不随主窗口移动

单文档视图下,主视图的子对话框不随主窗口移动?
本帖最后由 weiwuyuan 于 2013-08-05 11:13:23 编辑

void CMuhonMapEditorView::OnInitialUpdate()
{
CView::OnInitialUpdate();

// TODO: 在此添加专用代码和/或调用基类

// 创建子对话框
{
RECT wndRect;
GetWindowRect(&wndRect);

assert(m_pDialog == NULL);
m_pDialog = new CDialog;
m_pDialog->Create(IDD_DIALOG1, this);
m_pDialog->SetWindowPos(NULL, wndRect.right-200, wndRect.top, 200, wndRect.bottom-wndRect.top, 0);
m_pDialog->ShowWindow(SW_SHOW);
}
}


随便建个单文档MFC项目,然后在主视图的OnInitialUpdate()函数里创建一个子对话框,然后运行程序,拖动窗口,就会发现这个子对话框不跟随一起拖动.

什么原因? 怎么解决?

------解决方案--------------------
设置对话框风格为Child或者响应WM_NCXXX消息,拖动窗口标题栏时实时矫正对话框的位置