【发布时间】:2015-06-01 18:05:16
【问题描述】:
我的 MFC 应用程序是一个 MDI 应用程序。我有一个 MFC 扩展 dll,MFC 扩展 dll 将在 MFC MDI 应用程序之上启动子对话框。如下所示
CMyDialog pDisplayGlobal = new CMyDialog(IDD_DISPLAY, NULL);
pDisplayGlobal->Create(IDD_DISPLAY, AfxGetApp()->m_pMainWnd);
pDisplayGlobal->ShowWindow(SW_NORMAL);
注意:如果我在上面的代码中做错了什么,请告诉我。
问题: 我也启动了我的 MFC mdi 应用程序和子无模式对话框。无模式对话框始终仅位于父窗口之上(根据上面的代码)
Step1) I have opened other four different applications (Which means my MFC application is behind these four applications)
Step2) I clicked on my MFC application from the Taskbar it’s not showing the main application window. which means it didnt come in front its still in step1 stage only
Step3) To see My MFC application I have to minimize all the four applications
这就是问题所在,请有人给我一些代码 sn-p 作为解决方案。
提前致谢。
【问题讨论】:
-
不清楚你在问什么。此代码将无法编译:
CDialog pDisplayGlobal = new CDialog(IDD_DISPLAY, NULL);但这可能是复制/粘贴错误。如果代码在CMyWinApp或其他地方,您不会显示代码的位置。目前尚不清楚为什么要创建子对话框。这应该是基于对话框的应用程序吗? -
嗨 Barmak,纠正了错误,我创建了派生类的 CDialog 对象而不是 CDialog。请看上面的代码。
-
CDialog很好。你没有纠正任何错误,也没有回答我的任何问题。请阅读此stackoverflow.com/help/mcve 变量示例:CMyWinApp::InitInstance() { CDialog dlg(IDD_X); dlg.DoModal(); ...} -
我的 MFC 应用程序是一个 MDI 应用程序。我有一个 MFC 扩展 dll,MFC 扩展 dll 将在 MFC MDI 应用程序之上启动子对话框。在我的子对话框关闭之前,我可能无法从任务栏单击恢复 MFC 应用程序,如我第一个线程中提到的步骤。请帮我解决这个问题。
标签: mfc