STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU
它有一个关联的类(从CDialog派生),当我实例化它时,在
它不是真正的模态-我可以点击“父”窗口。
CMyDlg dlg;
int result = dlg.DoModal();
STYLE DS_SETFONT | DS_FIXEDSYS | WS_MINIMIZEBOX | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME
CAPTION "My Main App"
MENU IDR_MENU_MAIN
我从主窗口调用的其他dlg框,其中DoModal我想保留为非模态。但另一个我想要莫代尔。
其他信息:
此应用程序的GUI不是应用程序的主线程。它是一个命令行应用程序,启动另一个线程并加载一个DLL,其中包含GUI。我不确定这是否与这个问题有关。
主dlg窗口==A
这个新的dlg box窗口我想表现为modal==B
在A中:调用B.DoModal不是模态的,但我希望它是
在C中,如果我调用D.DoModal,它是模态的,我希望保持这种方式(因此应用程序确实显示了模态功能)
来自:
调用标准文件“打开”或“另存为dlg”框将导致非模态dlg框。
CFileDialog dlg(TRUE);
dlg.DoModal();
这两个问题似乎对其中一个问题有一些很好的可能性,但是它们没有解决如何确保调用的标准文件open/save dlg是模态的。。。
Convert a modeless dialog to modal at runtime
How do I create Modal dialog in worker thread(Non-UI thread)?