将UI插入另一个MFC对话框

时间:2011-05-26 18:53:23

标签: mfc dialog

我有一个MFC应用程序(exe),在其主UI中包含两个窗格。此应用程序加载另一个也包含一个对话框的DLL。如何以编程方式将定义的Dialog放入DLL中,并将其放入(在MFC应用程序的窗格中)?问题不在于如何以编程方式从DLL中检索对话框,而是如何将此对话框置于属于应用程序的一个UI窗格的顶部(内部,内部)?

我的目标是使用从dll检索到的对话框自定义应用程序的UI,并让用户感觉这些对话框都属于一个应用程序UI。谢谢你的提示。

2 个答案:

答案 0 :(得分:1)

我有一些应用程序具有此功能,通常使用选项卡控件在窗口之间交替。

首先,我在容器窗口中设置一个框架,对用户不可见。框架只是对话框窗口所在的占位符。

然后我将对话框窗口的实例作为容器类中的全局变量,我将对话框窗口创建为无模式窗口(使用Create(),而不是DoModal()),将窗口移动到与帧控件相同的RECT,并调用ShowWindow()来显示窗口。

答案 1 :(得分:1)

我是否正确理解您不希望对话框显示为对话框,而是显示为另一个窗口的内容或窗格?

换句话说,你想摆脱对话框的标题栏并将对话框的内容嵌入另一个窗口,是吗?

这是可能的。您需要创建没有标题栏的对话框(更改窗口样式),并确保将对话框的窗口创建为您希望内容进入的窗口的子窗口。我可以进一步解释这一点,但我首先想知道我是否正确理解你。