首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

非模态对话框覆盖住对话框的有关问题

2012-09-28 
非模态对话框覆盖住对话框的问题建立了一非模态对话框 但是他总是在主对话框上面如何解决我点击哪个对话框

非模态对话框覆盖住对话框的问题
建立了一非模态对话框 但是他总是在主对话框上面 如何解决我点击哪个对话框哪个就在上面的问题
希望能针对这段代码详细说明
void CMainDlg::OnButTest() 
{
  CTestDlg *m_dlg=NULL;
  m_dlg = new CTestDlg(this);
  m_dlg->Create(IDD_DIALOG_TEST,this);
  m_dlg->ShowWindow(SW_SHOW);
}
 备注:我用SetWindowPos和SetForegroundWindow试了各种情况都没有实现,所以才发帖

[解决办法]
m_dlg->Create(IDD_DIALOG_TEST,this);
这里的this参数表示你的m_dlg是当前窗口的子窗口,如果不改变父子关系的情况下,子窗口总是显示在父窗口之上的,SetWindowPos和SetForegroundWindow函数并不能改变这个,所以调用无效的。因此你必须要改变这个特性才可以达到你想要的目的。

热点排行