Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > Спрятать окно d MFC при загрузке


Автор: Nap 18.10.2004, 22:36
Нужно спрятать окно при загрузке, поискал в форуме, нашёл что можно через PreCreateWindow но ничего не получается кто в курсе напишите пример плз.. :stena

Автор: Coocky 18.10.2004, 22:45
Обрабатываешь сообщение WM_SHOW.Там пишешь ShowWindow(SW_HIDE).Или ставишь в PreCreateWindow стиль.По-моему...Всегда пользовался первым вариантом :)
Цитата
Нужно спрятать окно при загрузке,

Пример при показе окна.Так ты хотел выразиться словом при загрузке :)

Автор: Nap 19.10.2004, 10:52
ShowWindow(SW_HIDE) прячет окно после того, как оно показано DoModal(), a PreCreateWindow не получается: может я structuru заполняю, может вызываю не там (перед DoModal главной формы) вобщем вот:

CREATESTRUCT c;
c.style=SW_HIDE;
c.dwExStyle=SW_HIDE;
c.x=0;
c.y=0;
c.cx=100;
c.cy=100;

CprogDlg dlg;
dlg.PreCreateWindow©;
m_pMainWnd = &dlg;
INT_PTR nResponse = dlg.DoModal();

?????? :sample


Автор: Mad 19.10.2004, 13:57
Цитата(Nap @ 19.10.2004, 10:52)
CREATESTRUCT c;
c.style=SW_HIDE;
c.dwExStyle=SW_HIDE;
c.x=0;
c.y=0;
c.cx=100;
c.cy=100;


Тут надо ставить только c.style, и кстати SW_HIDE это команда, а не стиль окна :)
Из c.style надо убрать WS_VISIBLE тогда окно (любое) будет созданно спрятанным.

Автор: Coocky 19.10.2004, 19:27
Цитата
c.dwExStyle=SW_HIDE;
:D :D :D
Я такое не подсказывал :D
Цитата
Из c.style надо убрать WS_VISIBLE

Действительно.Совсем старый стал :D

Автор: Guest 19.10.2004, 22:11
Понятно... только как его убрать?

Автор: Nap 19.10.2004, 22:12
:qstn

Автор: Nap 19.10.2004, 22:13
:sample

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)