Мне нужно создать консольное приложение с функцией main () и открыть немодальное диалоговое окно, чтобы консоль могла работать параллельно с немодальным диалоговым окном (выполняйте другую работу , как общение с немодальным диалогом).
Что бы я ни пробовал, мне оставалось только открыть модальное диалоговое окно. (где консоль удерживается до самого закрытия модального диалога).
При переключении на немодальное диалоговое окно с помощью Create () и ShowWindow () диалоговое окно отображается без элементов управления и замораживается / блокируется (вы можете видеть курсор в виде песочных часов).
1) Я попытался открыть немодальный диалог из функции main ():
void main()
{
AfxWinInit(GetModuleHandle(NULL), NULL, GetCommandLine(), SW_SHOW);
TestGUI * gui;
gui = new TestGUI();
gui->Create(TestGUI::IDD);
gui->ShowWindow(SW_SHOW);
// just to see if the modeless dialog responses
Sleep(10000);
}
2) Я попытался открыть немодальный диалог из InitInstance () производного класса CWinApp:
extern int AFXAPI AfxWinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPTSTR lpCmdLine, int nCmdShow);
class MyApp : public CWinApp
{
public:
virtual BOOL InitInstance()
{
gui = new TestGUI();
gui->Create(TestGUI::IDD);
gui->ShowWindow(SW_SHOW);
return TRUE;
}
private:
TestGUI * gui;
};
MyApp my_app;
void main()
{
AfxWinMain(GetModuleHandle(NULL), NULL, GetCommandLine(), SW_SHOW);
// just to see if the modeless dialog responses
Sleep(10000);
}
Во всех случаях немодальный диалог зависает.
Я считаю, что это однострочное решение.
Пожалуйста, помогите.
TNX,
Вертилка