我有两个单独的应用程序 A.exe 和 B.exe,它们会生成两个独立的顶级窗口。两者都是 C++ 应用程序,在 windows 平台上使用 win32 gui 框架。我想将它们组合到一个新的应用程序 C.exe 中,以便它在多选项卡对话框中的单独选项卡中显示这两个。
Baiscaly 如何将 C.exe 中的 Dialog Dlg1
设置为 A.exe 的父窗口(顶级窗口)或以其他方式如何加载 A.exe(顶级窗口)作为 Dlg1
中的子窗口 in C.exe
是否有使用 win32 或 MFC 的解决方案?还是不可能?
最佳答案
如果 C.exe 生成 A.exe 和 B.exe,它可以将自己的 HWND
作为命令行参数传递,然后 A.exe 和 B.exe 可以检索该参数并使用HWND
作为父窗口在需要时调用 CreateWindow/Ex()
或 SetParent()
。否则,C.exe 将不得不使用 FindWindow/Ex()
或 EnumWindows()
手动查找 A.exe 的 HWND
句柄和B.exe,然后对它们调用 SetParent()
。
关于c++ - 如何在另一个对话进程中加载对话exe作为子窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10789599/