Странности в работе модального окна
Значит, по порядку: при нажатии правой кнопки мыши в TreeCtrl создается контекстное меню, из которого выбирается пункт, который открывает модальное диалоговое окошко. Я сделал все как с диалогом About из стандартного шаблона, наследовал CMyDialog от CDialog, перехватил WM_COMMAND:
BEGIN_MESSAGE_MAP(CMyTreeCtrl, CTreeCtrl)
ON_COMMAND(ID_OPENMYDIALOG, OnMyDialog)
END_MESSAGE_MAP()
void CMyTreeCtrl::OnMyDialog()
{
CMyDialog MyDialog;
MyDialog.DoModal();
}
А теперь самое интересное: диалог создается нормально, но сразу после этого приложение теряет связь с внешним миром, не реагирует на клики, но не зависает - при сворачивании и разворачивании, или при переходе на другую задачу и возвращении, дальше работает как надо.
Пытался запускать оттуда окно About - тот же результат (мое окно вместо About запускается и работает корректно), пытался передавать сообщение в MainWnd и открывать оттуда - результат тот же. Не могу понять, в чем дело, помогите.
Resource Editor -> Dialog Properties
Цитата:
Originally posted by rostyslav
Диалоговое окно должен иметь стиль Popup
Resource Editor -> Dialog Properties
Диалоговое окно должен иметь стиль Popup
Resource Editor -> Dialog Properties
Имеет. Оно вообще полностью соответствует окну About (я его продублировал в ресурсах). Самое интересное, что на клавиши реагирует, если нажимаю пробел или Enter, то благополучно закрывается и все нормально, но команды мыши до него почему-то не доходят.