Общая библиотека диалоговых окон

Общая библиотека диалоговых окон содержит набор диалоговых окон для выполнения стандартных задач приложения, таких как открытие файлов, выбор значений цвета и печать документов. Общие диалоговые окна позволяют реализовать согласованный подход к пользовательскому интерфейсу приложения. Это сокращает объем усилий, которые пользователи тратят на изучение поведения пользовательского интерфейса для приложения.

В этом разделе описываются распространенные диалоговые окна, в том числе диалоговые окна "Открыть" и "Сохранить как "; Диалоговые окна редактирования "Поиск и замена "; Диалоговые окна Печать, Настройка печати, Печать страницы свойств и Параметры страницы печати; и диалоговые окна Цвет и Шрифт .

Примечание

Начиная с Windows Vista, общие диалоговые окна "Открыть" и "Сохранить как" заменены диалоговым окном "Общий элемент". Мы рекомендуем использовать API общих диалоговых окон вместо этих диалоговых окон из общей библиотеки диалоговых окон.

В этом разделе

Имя Описание
Распространенные типы диалоговых окон Обсуждаются различные диалоговые окна.
Общие флаги инициализации диалогового окна Описывает, как флаги используются для изменения поведения и внешнего вида общего диалогового окна.
Настройка общих диалоговых окон Описывает использование общих диалоговых окон.
Использование общих диалоговых окон Рассматриваются задачи, вызывающие общие диалоговые окна.
Справочник по общим диалоговым окнам Содержит справочник по API.

Функции

Имя Описание
CCHookProc Получает сообщения или уведомления, предназначенные для диалогового окна по умолчанию диалогового окна Цвет . Это функция обратного вызова, определяемая приложением или библиотекой, которая используется с функцией ChooseColor .
CFHookProc Получает сообщения или уведомления, предназначенные для диалогового окна по умолчанию диалогового окна Шрифт . Это процедура обратного вызова, определяемая приложением или библиотекой, которая используется с функцией ChooseFont .
Выбор цвета Создает диалоговое окно Цвет , позволяющее пользователю выбрать цвет.
ВыберитеФонт Создает диалоговое окно Шрифт , которое позволяет пользователю выбирать атрибуты для логического шрифта. Эти атрибуты включают семейство шрифтов и связанный стиль шрифта, размер точек, эффекты (подчеркивание, зачеркивающие и цвет текста), а также скрипт (или набор символов).
CommDlgExtendedError Возвращает общий код ошибки диалогового окна. Этот код указывает на последнюю ошибку, возникаемую во время выполнения одной из распространенных функций диалогового окна.
FindText Создает системное диалоговое окно поиска без режима, которое позволяет пользователю указать строку для поиска и параметры, используемые при поиске текста в документе.
FRHookProc Получает сообщения или уведомления, предназначенные для диалогового окна по умолчанию диалогового окна "Найти или заменить ". Это функция обратного вызова, определяемая приложением или библиотекой, которая используется с функцией FindText или ReplaceText .
GetFileTitle Извлекает имя указанного файла.
GetOpenFileName Создает диалоговое окно Открыть , которое позволяет пользователю указать диск, каталог и имя файла или набора файлов для открытия.
GetSaveFileName Создает диалоговое окно Сохранение , которое позволяет пользователю указать диск, каталог и имя файла для сохранения.
OFNHookProc Получает уведомления, отправленные из диалогового окна. Функция также получает сообщения для всех дополнительных элементов управления, определенных путем указания дочернего шаблона диалогового окна. Это функция обратного вызова, определяемая приложением или библиотекой, которая используется с диалоговым окном "Открыть" и "Сохранить как" в стиле Обозреватель.
OFNHookProcOldStyle Получает сообщения или уведомления, предназначенные для процедуры диалогового окна. Это функция обратного вызова, определяемая приложением или библиотекой, которая используется с диалоговым окном Открыть и Сохранить как .
PagePaintHook Получает сообщения, позволяющие настроить рисование примера страницы в диалоговом окне Параметры страницы . Это определяемая приложением или библиотеками функция обратного вызова, используемая с функцией PageSetupDlg .
PageSetupDlg Создает диалоговое окно Параметры страницы , позволяющее пользователю указать атрибуты печатной страницы. К этим атрибутам относятся размер и источник бумаги, ориентация страницы (книжная или альбомная) и ширина полей страницы.
PageSetupHook Получает сообщения или уведомления, предназначенные для процедуры диалогового окна по умолчанию диалогового окна Параметры страницы . Это определяемая приложением или библиотеками функция обратного вызова, используемая с функциейPageSetupDlg.
PrintDlg Отображаетдиалоговое окно "Печать". Диалоговое окно Печать позволяет пользователю указать свойства определенного задания печати.
PrintDlgEx Отображает страницу свойств Печати , которая позволяет пользователю указать свойства определенного задания печати. Страница свойствПечатьсодержит страницу Общие , содержащую элементы управления, похожие на диалоговое окно Печать . Страница свойств также может содержать дополнительные страницы свойств для конкретного приложения и драйвера, а также страницу Общие .
PrintHookProc Получает сообщения или уведомления, предназначенные для процедуры диалогового окна по умолчанию диалогового окна Печать . Это функция обратного вызова, определяемая приложением или библиотекой, которая используется с функцией PrintDlg .
ReplaceText Создает системное безмодерное диалоговое окно, которое позволяет пользователю указать строку для поиска и замены, а также параметры для управления операциями поиска и замены.
SetupHookProc Функция обратного вызова, определяемая приложением или библиотекой, используемая с функцией PrintDlg . Процедура перехватчика получает сообщения или уведомления, предназначенные для диалогового окна по умолчанию диалогового окна Настройка печати .

Интерфейсы

Имя Описание
IPrintDialogCallback Предоставляет методы, позволяющие приложению получать уведомления и сообщения от функции PrintDlgEx при отображении страницы свойств печати .
IPrintDialogServices Предоставляет методы, позволяющие приложению использовать функцию PrintDlgEx для получения сведений о текущем выбранном принтере.

Сообщения

name Описание
CDM_GETFILEPATH Извлекает путь и имя выбранного файла в диалоговом окне Открыть или Сохранить как в стиле Обозреватель. Диалоговое окно должно быть создано с флагом OFN_EXPLORER; в противном случае сообщение завершается ошибкой.
CDM_GETFOLDERIDLIST Извлекает адрес списка идентификаторов элементов, соответствующих папке, открытой в Обозреватель стиле диалогового окна "Открыть" или "Сохранить как". Диалоговое окно должно быть создано с флагом OFN_EXPLORER ; в противном случае сообщение завершается ошибкой.
CDM_GETFOLDERPATH Извлекает путь к текущей открытой папке или каталогу для диалогового окна "Открыть" или "Сохранить как" в стиле Обозреватель. Диалоговое окно должно быть создано с флагом OFN_EXPLORER ; в противном случае сообщение завершается ошибкой.
CDM_GETSPEC Извлекает имя файла (не включая путь) текущего выбранного файла в диалоговом окне "Открыть" или "Сохранить как" в стиле Обозреватель. Диалоговое окно должно быть создано с флагом OFN_EXPLORER ; в противном случае сообщение завершается ошибкой.
CDM_HIDECONTROL Скрывает указанный элемент управления в Обозреватель стиле диалогового окна Открыть или Сохранить как. Диалоговое окно должно быть создано с флагом OFN_EXPLORER ; в противном случае сообщение завершается ошибкой.
CDM_SETCONTROLTEXT Задает текст для указанного элемента управления в Обозреватель стиле диалогового окна Открыть или Сохранить как. Диалоговое окно должно быть создано с флагом OFN_EXPLORER ; в противном случае сообщение завершается ошибкой.
CDM_SETDEFEXT Задает расширение имени файла по умолчанию для диалогового окна "Открыть" или "Сохранить как" в стиле Обозреватель. Диалоговое окно должно быть создано с флагом OFN_EXPLORER ; в противном случае сообщение завершается ошибкой.
SETRGBSTRING Процедура перехватчика диалогового окна Цвет, CCHookProc, может отправлять зарегистрированное сообщение SETRGBSTRING в диалоговое окно, чтобы задать текущий цвет.
WM_CHOOSEFONT_GETLOGFONT Приложение отправляет сообщение WM_CHOOSEFONT_GETLOGFONT в диалоговое окно Шрифт для получения сведений о текущем выборе шрифта пользователем.
WM_CHOOSEFONT_SETFLAGS Приложение отправляет сообщение WM_CHOOSEFONT_SETFLAGS в диалоговое окно Шрифт , чтобы задать параметры отображения диалогового окна.
WM_CHOOSEFONT_SETLOGFONT Приложение отправляет сообщение WM_CHOOSEFONT_SETLOGFONT в диалоговое окно Шрифт , чтобы задать текущие сведения о логическом шрифте.

Уведомления

Имя Описание
CDN_FILEOK Отправляется с помощью диалогового окна Открыть или Сохранить как в стиле Обозреватель, когда пользователь указывает имя файла и нажимает кнопку ОК.
CDN_FOLDERCHANGE Отправляется в Обозреватель стиле диалогового окна Открыть или Сохранить как при открытии новой папки.
CDN_HELP Отправляется с помощью Обозреватель диалогового окна Открыть или Сохранить как, когда пользователь нажимает кнопку Справка.
CDN_INCLUDEITEM Отправляется диалоговым окном Открыть или Сохранить как , чтобы определить, должен ли в диалоговом окне отображаться элемент в списке элементов папки оболочки. Когда пользователь открывает папку, диалоговое окно отправляет уведомление CDN_INCLUDEITEM для каждого элемента в папке. Диалоговое окно отправляет это уведомление только в том случае, если при создании диалогового окна был установлен флаг OFN_ENABLEINCLUDENOTIFY .
CDN_INITDONE Отправляется диалоговым окном "Открыть" или "Сохранить как" в стиле Обозреватель, когда система завершит размещение элементов управления в диалоговом окне. Система перемещает стандартные элементы управления, чтобы освободить место для элементов управления дочернего диалогового окна.
CDN_SELCHANGE Отправляется с помощью диалогового окна Открыть или Сохранить как в стиле Обозреватель при изменении выбора в списке, в котором отображается содержимое открытой папки или каталога.
CDN_SHAREVIOLATION Отправляется в Обозреватель стиле диалогового окна Открыть или Сохранить как, когда пользователь нажимает кнопку ОК и для выбранного файла возникает нарушение общего доступа к сети.
CDN_TYPECHANGE Отправляется в Обозреватель стиле диалогового окна Открыть или Сохранить как, когда пользователь выбирает новый тип файла в поле со списком типов файлов.
COLOROKSTRING Диалоговое окно Цвет отправляет зарегистрированное сообщение COLOROKSTRING процедуре перехватчика CCHookProc, когда пользователь выбирает цвет и нажимает кнопку ОК . Процедура перехватчика может принять цвет и разрешить закрыть диалоговое окно или отклонить цвет и принудительно сохранить диалоговое окно открытым.
FILEOKSTRING Диалоговое окно Открыть или Сохранить как отправляет зарегистрированное сообщение FILEOKSTRING процедуре перехватчика OFNHookProc, когда пользователь указывает имя файла и нажимает кнопку ОК . Процедура перехватчика может принять имя файла и разрешить закрыть диалоговое окно или отклонить имя файла и принудительно сохранить открытое диалоговое окно.
FINDMSGSTRING Диалоговое окно Найти или заменить отправляет зарегистрированное сообщение FINDMSGSTRING в процедуру окна-владельца, когда пользователь нажимает кнопку Найти далее, Заменить или Заменить все или закрывает диалоговое окно.
HELPMSGSTRING Обычное диалоговое окно отправляет зарегистрированное сообщение HELPMSGSTRING в процедуру окна владельца, когда пользователь нажимает кнопку Справка .
LBSELCHSTRING Диалоговое окно Открыть или Сохранить как отправляет зарегистрированное сообщение LBSELCHSTRING в процедуру перехватчика при изменении выбора в любом из списков или полей со списком диалогового окна.
SHAREVISTRING Диалоговое окно Открыть или Сохранить как отправляет зарегистрированное сообщение SHAREVISTRING в процедуру перехватчика OFNHookProc, если для выбранного файла происходит нарушение общего доступа, когда пользователь нажимает кнопку ОК .
WM_PSD_ENVSTAMPRECT Уведомляет процедуру перехватчика диалогового окна "Настройка страницы " PagePaintHook о том, что диалоговое окно будет нарисовывать прямоугольник конвертной метки примера страницы.
WM_PSD_FULLPAGERECT Уведомляет процедуру перехватчика PagePaintHook о координатах прямоугольника образца страницы в диалоговом окне Параметры страницы . Диалоговое окно отправляет это сообщение, когда будет нарисовывается содержимое примера страницы.
WM_PSD_GREEKTEXTRECT Уведомляет процедуру перехватчика диалогового окна PagePaintHook диалогового окна PagePaintHook о том, что диалоговое окно будет рисовать греческий текст в прямоугольнике полей примера страницы.
WM_PSD_MARGINRECT Уведомляет процедуру перехватчика диалогового окна Параметры страницыPagePaintHook о том, что диалоговое окно будет нарисовывать прямоугольник полей примера страницы.
WM_PSD_MINMARGINRECT Уведомляет процедуру перехватчика PagePaintHook о координатах прямоугольника поля в примере страницы. Диалоговое окно Параметры страницы отправляет это сообщение, когда оно будет отрисовывает содержимое примера страницы.
WM_PSD_PAGESETUPDLG Уведомляет процедуру перехватчика PagePaintHook о том, что диалоговое окно Параметры страницы вот-вот нарисует содержимое примера страницы. Процедура перехватчика может использовать это сообщение для выполнения задач инициализации, связанных с рисованием содержимого примера страницы.
WM_PSD_YAFULLPAGERECT Уведомляет процедуру перехватчика диалогового окна "Настройка страницы" PagePaintHook о том, что диалоговое окно вот-вот нарисует часть возвращаемого адреса примера страницы конверта.

Структуры

Имя Описание
CHOOSECOLOR Содержит сведения, которые функция ChooseColor использует для инициализации диалогового окна Цвет . После того как пользователь закроет диалоговое окно, система возвращает сведения о выборе пользователя в этой структуре.
CHOOSEFONT Содержит сведения, которые функция ChooseFont использует для инициализации диалогового окна Шрифт . После того как пользователь закроет диалоговое окно, система возвращает сведения о выборе пользователя в этой структуре.
DEVNAMES Содержит строки, определяющие имена драйверов, устройств и выходных портов для принтера. Функции PrintDlgEx и PrintDlg используют эти строки для инициализации определяемого системой листа свойств печати или диалогового окна печати. Когда пользователь закрывает страницу свойств или диалоговое окно, сведения о выбранном принтере возвращаются в этой структуре.
FINDREPLACE Содержит сведения, используемые функциями FindText и ReplaceText для инициализации диалоговых окон Найти и Заменить . Зарегистрированное сообщение FINDMSGSTRING использует эту структуру для передачи входных данных поиска или замены пользователя в окно владельца диалогового окна Поиск или Замена .
OFNOTIFY Сведения о WM_NOTIFY сообщении, отправленном в процедуру перехватчика OFNHookProc для диалогового окна Открыть или Сохранить как . Параметр lParamсообщения WM_NOTIFY является указателем на структуру OFNOTIFY .
OFNOTIFYEX Содержит сведения о сообщении уведомления CDN_INCLUDEITEM .
OPENFILENAME Содержит сведения, используемые функциями GetOpenFileName и GetSaveFileName для инициализации диалогового окна "Открыть" или "Сохранить как ". После того как пользователь закроет диалоговое окно, система возвращает сведения о выборе пользователя в этой структуре.
OPENFILENAME_NT4 Идентичен параметру OPENFILENAME с _WIN32_WINNT значением 0x0400.
PAGESETUPDLG Содержит сведения, которые функция PageSetupDlg использует для инициализации диалогового окна Параметры страницы . После того как пользователь закроет диалоговое окно, система возвращает сведения о пользовательских параметрах страницы в этой структуре.
PRINTDLG Содержит сведения, которые функция PrintDlg использует для инициализации диалогового окна печати. После того как пользователь закроет диалоговое окно, система использует эту структуру для возврата сведений о выборе пользователя.
PRINTDLGEX Содержит сведения, которые функция PrintDlgEx использует для инициализации страницы свойств Print. После того как пользователь закроет страницу свойств, система использует эту структуру для возврата сведений о выборе пользователя.
PRINTPAGERANGE Задает диапазон страниц в задании печати. Задание печати может иметь несколько диапазонов страниц. Эти сведения предоставляются в структуре PRINTDLGEX при вызове функции PrintDlgEx .