CWinApp 파생 InitInstance() 함수에서 만들고있는 간단한 모덜리스 대화 상자를 만들려고합니다.MFC : 표시하지 않고 모덜리스 대화 상자 만들기
BOOL CMyApp::InitInstance()
{
...
m_pMyDialog = new CMyDialog();
m_pMyDialog->Create(CMyDialog::IDD);
...
retrun TRUE;
}
리소스 편집기에서 대화 템플릿을 만들었으며 WS_VISIBLE 비트가 설정되어 있지 않습니다. 내 의도 ShowWindow (SW_SHOW) 명시 적으로 호출 할 때까지 대화 표시를 피하기 위해 있지만 어떤 이유로 만들기 호출을 대화 상자를 표시합니다.
OnInitDialog()의 반환 값을 FALSE로 변경하려고했지만 작동하지 않습니다.
심지어 다른 뭔가 WS_VISIBLE 비트를 설정하는 경우 ModifyStyle() 호출하려고했습니다.
int CMyDialog::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CDialog::OnCreate(lpCreateStruct) == -1)
return -1;
ModifyStyle(WS_VISIBLE, 0);
return 0;
}
그 중 하나도 작동하지 않습니다. 모든 경우에, 작성한 후에 대화 상자가 표시됩니다. 대화 상자가 표시되면 읽지 않은 대화 상자가 표시됩니다.
Create (...)를 호출 한 후 ShowWindow (SW_HIDE)를 호출 할 수 있지만 대화 상자가 일시적으로 화면에 깜박이고 이상적이지 않다는 것을 알고 있습니다. – sna14