Re[2]: Проблема с CFileDialog
От: PSP Беларусь  
Дата: 20.10.01 13:37
Оценка:
Здравствуйте ZORK, Вы писали:

ZORK>Здравствуйте Aslamov, Вы писали:


A>>Возникла проблема:

A>>У меня есть класс — наследник от CFileDialog, окно диалога которого является родительским для моего окна диалога. Нужно каким — либо способом обработать нажатие кнопки Open/Save As. Пока все мои попытки ни к чему не привели — родительский диалог обрабатывает это сам.
A>>Если кто-нибудь знает как с этим бороться, помогите плз!

ZORK>Я думаю что тут можно hook'ом подцепиться, если знать ID этой кнопки — что узнается Spy'ем (смотри Tools меню в Visual Studio).


Да не... Hook -- это изврат для такого простого случая.

Привожу часть кода для примера.
Где pFD -- FileDialog


SetControlText(IDOK, _T("Select"));
m_wndProc = (WNDPROC)SetWindowLong(pFD->m_hWnd, GWL_WNDPROC, (long)WindowProcNew);

или
MyFileDlg->SubclassWindow(pFD->m_hWnd);

и соответственно обрабатываешь IDOK.


Можно еще изврат:

MyWnd->SubclassDlgItem(IDOK, pFD->m_hWnd)
Всегда Ваш, PSP.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.