Отправляет email-рассылки с помощью сервиса Sendsay

Программирование. Форум !!!

Как заменить Open в VS C++ 6.0

Привет всем !!!

Подскажите пожалуйста, как заменить стандартное окно Open в VS C++
6.0, которое вызывается через CFileDialog dlgOpen() на созданное мною,
т.е. мне нужно чтобы оно приблизительно выглядело как в Photoshop (при
выделении картинки, показывается её миниатюрное изображение).

Ответить   Mon, 26 Jan 2004 20:47:12 +0600 (#63971)

 

Ответы:

Здравствуйте !

Примерно так :

Создаешь свой диалоговый шаблон.
За основу берешь шаблон стандартного диалога.
Лежит он в <Диск>:\MSVC\SAMPLES\COMMDLG

Далее :

CFileDialog fileDialog(TRUE, szFileDialogExt, NULL,
OFN_HIDEREADONLY | OFN_ENABLETEMPLATE, szFileDialogFilter);

здесь главное - OFN_ENABLETEMPLATE.

Далее :

fileDialog.m_ofn.Flags &= ~OFN_EXPLORER;
fileDialog.m_ofn.lpTemplateName = "MYFILEOPEN";

"MYFILEOPEN" - имя нового ресурса диалога.

либо :

fileDialog.m_ofn.lpTemplateName = MAKEINTRESOURCE(FILEOPENORD);
fileDialog.m_ofn.Flags &= ~OFN_EXPLORER;

Далее :

fileDialog.m_ofn.hInstance = AfxGetInstanceHandle();

Далее :

if(fileDialog.DoModal() == IDOK)
...

:-)

Вроде так. Сейчас точно не помню, но идея именно такая.

--
С уважением, Вахтуров Виктор.
Информационный сайт для программистов http://SoftMaker.com.ru
Получить правила : mailto:comp.soft.prog.prog-rules@subscribe.ru
Формат "дайджест" : mailto:comp.soft.prog.prog-digest@subscribe.ru
Формат "каждое письмо" : mailto:comp.soft.prog.prog-normal@subscribe.ru
Формат "читать с веба" : mailto:comp.soft.prog.prog-webonly@subscribe.ru

-*Информационный канал Subscribe.Ru
Написать в лист: mailto:comp.soft.prog.prog-list@subscribe.ru
Отписаться: mailto:comp.soft.prog.prog--unsub@subscribe.ru

http://subscribe.ru/ mailto:ask@subscribe.ru

Ответить   Mon, 26 Jan 2004 21:55:00 +0300 (#64228)

 

Здравствуйте, Vova.

Вы писали 26 января 2004 г., 16:47:12:

Если у тебя уже есть свой класс диалогового окна, и если он ребёнок
CDialog, просто сделай так MyOpenDialog.DoModal().
Что касается dlgOpen - а что это за функция. Что-то не припомню?

Ответить   Mon, 26 Jan 2004 19:51:25 +0200 (#64271)

 

Здравствуйте, Yurij.

Вы писали 26 января 2004 г., 23:51:25:

dlgOpen() - стандартная функция для вызова диалогового окна Open.

Ответить   Tue, 27 Jan 2004 13:05:37 +0600 (#64631)