问题是这样的:我首先用MFC向导创建一个对话框,该对话框上有一个"创建"按钮和静态文本,然后在添加两个基类为CPropertyPage的对话框做属性页,其中有一个对话框中有一按钮,响应某个MessageBox消息,然后在主对话框的"创建"按钮中创建非模态的属性表单,函数为:
CRect rect; 
m_sheet.Create(this,WS_POPUP,0);
GetDlgItem(IDC_STATIC1)->GetWindowRect(rect);
m_sheet.MoveWindow(rect);
m_sheet.ShowWindow(SW_SHOW);
其中m_sheet是CPropertySheet的对象,两个属性页在主对话框初始化时就添加进去了,而问题是m_sheet.Create(this,WS_POPUP,0)创建的属性表单可以移动指定的静态文本的位置,但是如果主对话框移动了,那么这个属性表单是不会随主对话框移动的,它是固定在刚出现时的位置的。但如果我将WS_POPUP改成WS_CHILD风格的话,它是会随主对话框移动的,但是它的其中一个属性页响应MessageBox消息时是不会弹出来的,而且整个程序会卡住了;就连响应主对话框最小化后再复原的消息也会卡住的,为什么会这样呢???????????
我想要的是一个在指定位置出现的可以随主对话框移动并能响应消息的非模态属性表单啊,求大神们帮帮忙了~~~~~~~~~~~~~~~~~~