Пользовательские шаблоны

Стандартные диалоговые окна имеют заданные по умолчанию шаблоны, которые определяют число, тип и позицию стандартных органов управления в диалоговом окне. Вы можете определить пользовательский шаблон, чтобы дать пользователям доступ к дополнительным элементам управления, которые явятся уникальными для вашей прикладной программы.

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

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

Тип диалогового окна

Файл шаблона

Включаемый файл

Цвет (Color)

Color.dlg

ColorDlg.h

Найти (Find)

Findtext.dlg

Dlgs.h

Шрифт (Font)

Font.dlg

Dlgs.h

Открыть (Open) (многократный выбор)

Fileopen.dlg

Dlgs.h

Открыть (Open) (однократный выбор)

Fileopen.dlg

Dlgs.h

Параметры страницы (Page Setup)

Prnsetup.dlg

Dlgs.h

Печать (Print)

Prnsetup.dlg

Dlgs.h

Параметры печати (Print Setup) (устаревший)

Prnsetup.dlg

Dlgs.h

Заменить (Replace)

Findtext.dlg

Dlgs.h

Чтобы включить пользовательский шаблон, вы должны установить флажок в члене Flags соответствующей структуры для диалогового окна. Если шаблон - это ресурс в прикладной программе или в динамически подключаемой библиотеке (DLL), в члене Flags устанавливается флажок ENABLETEMPLATE, а члены структуры hInstance и lpTemplateName используются, чтобы идентифицировать имя модуля и ресурса. Если шаблон уже в памяти, в члене Flags устанавливается флажок ENABLETEMPLATEHANDLE, а член hInstance используется, чтобы идентифицировать объект памяти, который содержит шаблон.

В большинстве случаев, вы должны также разрешить и работу фильтр (hook) - процедуры событий для диалогового окна, чтобы поддерживать и обрабатывать вводимую информацию для дополнительных органов управления в вашем пользовательском шаблоне.

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

Назад в оглавление темы
На главную страницу темы

Hosted by uCoz