Я пытаюсь создать простое немодальное диалоговое окно, которое я создаю из своей функции InitInstance (), полученной из CWinApp.
BOOL CMyApp::InitInstance()
{
...
m_pMyDialog = new CMyDialog();
m_pMyDialog->Create(CMyDialog::IDD);
...
retrun TRUE;
}
Я создал шаблон диалога в редакторе ресурсов, и бит WS_VISIBLE не установлен. Мое намерение состоит в том, чтобы не показывать диалоговое окно, пока я не вызову явно ShowWindow (SW_SHOW), но по какой-то причине вызов Create отображает диалоговое окно.
Я пытался изменить возвращаемое значение OnInitDialog () на FALSE, но это не сработало.
Я даже пытался вызвать ModifyStyle () на случай, если что-то еще устанавливает бит WS_VISIBLE.
int CMyDialog::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CDialog::OnCreate(lpCreateStruct) == -1)
return -1;
ModifyStyle(WS_VISIBLE, 0);
return 0;
}
Это тоже не работает. Во всех случаях, после того, как я вызываю Create, отображается диалоговое окно, которое не так, как я прочитал, должно работать.