目前我的资源中有两个对话框模板。
我想将右侧模板的内容动态添加到左侧模板的对话框中。我该怎么做?
输出应如下所示:
另外,我正在使用 MFC c++。我对此很陌生,我非常感谢任何帮助!
这是我尝试做的,但只有主对话框会显示:
MainDialogBox *mainDlg = new MainDialogBox();
subDialogBox *subDlg = new subDialogBox(mainDlg);
通过删除其标题栏和边框样式来更改子对话框模板。这将使它融入并看起来像父对话框的一部分。
然后将子对话框创建为无模式对话框,其父窗口是父对话框。(使用 CDialog::Create 创建一个无模式对话框。)如果您已经在这样做并且第二个对话框没有显示,那么您可能没有设置“可见”样式。
当你创建父对话框时,给它样式 WS_EX_CONTROLPARENT。这将有助于父母和孩子之间的键盘导航。
最后,您需要将子对话框放置在父对话框上您想要的位置。父级可以将 x,y 点或矩形传递给对话框构造函数。然后孩子(在 OnInitDiialog 中)可以通过调用 SetWindowPos 来定位自己。