Структура DLGPAGE (compstui.h)

Структура DLGPAGE используется для указания страницы страницы свойств для функции ComPropSheet CPSUI. Адрес структуры включен в структуру COMPROPSHEETUI , а все значения элементов предоставляются вызывающим элементом ComPropSheet .

Синтаксис

typedef struct _DLGPAGE {
  WORD      cbSize;
  WORD      Flags;
  DLGPROC   DlgProc;
  LPTSTR    pTabName;
  ULONG_PTR IconID;
  union {
    WORD   DlgTemplateID;
    HANDLE hDlgTemplate;
  } DUMMYUNIONNAME;
} DLGPAGE, *PDLGPAGE;

Участники

cbSize

Размер, предоставленный вызывающим абонентом в байтах структуры DLGPAGE.

Flags

Битовые флаги, предоставленные вызывающим абонентом, как описано в следующей таблице.

Флаг Определение
DPF_ICONID_AS_HICON Если задано, IconID содержит дескриптор значка.

Если значение не задано, IconID содержит идентификатор ресурса значка.

DPF_USE_HDLGTEMPLATE Если задано, hDlgTemplate содержит дескриптор шаблона.

Если значение не задано, DlgTemplateID содержит идентификатор ресурса шаблона.

DlgProc

Необязательный, предоставленный вызывающей службой DLGPROC указатель на процедуру диалогового окна, используемую для обработки сообщений, отправляемых системой при возникновении событий пользователя. (Тип указателя DLGPROC описан в Microsoft Windows SDK документации.) Если значение NULL, CPSUI предоставляет процедуру диалогового окна. Дополнительные сведения см. в разделе "Примечания".

pTabName

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

IconID

Вызывающий объект может быть одним из следующих:

  • Идентификатор ресурса значка. Это может быть определено приложением или может быть одним из предоставленных CPSUI идентификаторов ресурсов значка с префиксом IDI_CPSUI.
  • Дескриптор значка. Если указан дескриптор, DPF_ICONID_AS_HICON необходимо задать в элементе Flags .
Указанный значок отображается на вкладке страницы. Если это значение равно нулю, значок не отображается.

DUMMYUNIONNAME

DUMMYUNIONNAME.DlgTemplateID

Идентификатор ресурса, предоставленного вызывающим абонентом, для шаблона диалогового окна. Это может ссылаться на предоставленный приложением ресурс DIALOG или один из указанных ниже идентификаторов CPSUI (определенных в compstui.h):

Идентификатор Тип страницы
DP_STD_DOCPROPPAGE1 Страница nontreeview, используемая для страницы макета документа печати.
DP_STD_DOCPROPPAGE2 Страница nontreeview, используемая для страницы "Бумага и качество " документа печати.
DP_STD_TREEVIEWPAGE Страница универсального представления дерева.
 

Предоставленные CPSUI идентификаторы ссылаются на шаблоны, которые могут отображать типы параметров CPSUI. Размер страницы для этих шаблонов составляет 252 на 216 диалоговых блоков. Дополнительные сведения см. в разделе CPSUI— предоставленные страницы и шаблоны.

Этот элемент не используется, если DPF_USE_HDLGTEMPLATE заданы в флагах.

DUMMYUNIONNAME.hDlgTemplate

Вызываемый дескриптор структуры DLGTEMPLATE (описан в Microsoft Windows SDK документации).

Используется только в том случае, если DPF_USE_HDLGTEMPLATE установлен в флагах.

Комментарии

CPSUI создает страницу страницы свойств путем выделения структуры PROPSHEETPAGE и передачи ее в CreatePropertySheetPage (описано в документации по Windows SDK). Если вызывающий объект указал указатель типа DLGPROC на процедуру диалогового окна в DlgProc, эта процедура используется для обработки сообщений окна страницы. Если DlgProc имеет значение NULL, используются собственные процедуры диалогового окна CPSUI.

Когда процедура диалогового окна, на которую указывает DlgProc , вызывается со значением сообщения WM_INITDIALOG, она получает структуру PROPSHEETPAGE в качестве входных данных, а также получает структуру PSPINFO .

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

Структура PROPSHEETPAGE, тип указателя DLGPROC и сообщение WM_INITDIALOG описаны в документации по Windows SDK.

Требования

   
Заголовок compstui.h (include Compstui.h)