Win32 API. Библиотека стандартных диалоговых окон - Настройка диалоговых окон старого стиля

ОГЛАВЛЕНИЕ


Настройка диалоговых окон старого стиля

Вы можете настраивать диалоговое окно Открыть (Open) или Сохранить как (Save As) старого стиля, обеспечивая фильтр- процедурой OFNHookProcOldStyle, которая принимает сообщения или предупреждения, предназначенные для заданной по умолчанию процедуры диалогового окна. Вы можете также предоставить пользовательский шаблон, чтобы использовать его вместо заданного по умолчанию шаблона. Фильтр - процедуры и шаблоны, используемые с диалоговыми окнами старого стиля сходны с теми, которые используются с другими стандартными диалоговыми окнами. Для получения дополнительной информации, см. статьи Фильтр - процедуры для общих диалоговых окон и Пользовательские шаблоны.

Чтобы включить фильтр - процедуру для диалогового окна Открыть (Open) или Сохранить как (Save As) старого стиля, используйте структуру OPENFILENAME, когда вы создаете диалоговое окно. В элементе Flags установите флажок OFN_ENABLEHOOK, а в элементе lpfnHook установите адрес фильтр - процедуры OFNHookProcOldStyle. Процедура диалогового окна посылает фильтр - процедуре сообщение WM_INITDIALOG с параметром lParam, который устанавливает адрес структуры OPENFILENAME, используемой, чтобы инициализировать диалоговое окно.

Вы можете использовать структуру OPENFILENAME, чтобы определить пользовательский шаблон для диалогового окна Открыть (Open) или Сохранить как (Save As), используя вместо заданного по умолчанию шаблона. Если ваш пользовательский шаблон - ресурс в прикладной программе или динамически компонуемой библиотеке, в элементе Flags установите флажок OFN_ENABLETEMPLATE и используйте элементы структуры hInstance и lpTemplateName, чтобы идентифицировать имя ресурса и модуль. Если ваш пользовательский шаблон - уже в памяти, установите флажок OFN_ENABLETEMPLATEHANDLE и используйте элемент hInstance, чтобы идентифицировать объект памяти, который содержит шаблон. Создайте пользовательский шаблон, изменяя заданный по умолчанию шаблон, определяемый в файле FILEOPEN.DLG. Идентификаторы элементов управления, используемые по умолчанию в шаблоне блока диалога Найти (Find) и Заменить (Replace), определены в файле DLGS.H.

По умолчанию, функции GetOpenFileName и GetSaveFileName показывают диалоговые окна в стиле Проводника. Если вы желаете показать диалоговое окно старого стиля, то должны предоставить фильтр - процедуру OFNHookProcOldStyle и гарантировать, чтобы флажок OFN_EXPLORER не был установлен в элементе Flags структуры OPENFILENAME.

Если Вы устанавливаете флажок OFN_EXPLORER, система обрабатывает фильтр - процедуру или пользовательский шаблон как настройку на стиль Проводника. Об информации о настройках диалогового окна в стиле Проводника, см. статью Пользовательские шаблоны в стиле Проводника.