У меня немодальный диалог. Когда я пытаюсь сделать .DoModal () оттуда, он показывает диалог, но все же позволяет вам взаимодействовать с немодальным диалогом.
Вот как я создаю немодальный диалог:
MyMainEditorWindow = new CMyMain (this);
MyMainEditorWindow-> Создать (CMyMain :: IDD, GetDesktopWindow ());
MyMainEditorWindow-> ShowWindow (SW_SHOW);
Чтобы сделать модальный, из этого немодального окна я делаю
CMyDlg myDlg;
int dialogbox = myDlg.DoModal ();
Есть ли способ сделать то, что я хочу? Где в немодальном окне, диалог от него заставляет свое окно ждать, пока это не решено.
Вам нужно установить родительское окно в конструкторе модального диалога. Документы для конструктора CDialog говорят, что если вы установите его NULL
, он использует главное окно приложения в качестве родителя, и по умолчанию, если не указано, NULL
,
Других решений пока нет …