Функция обратного вызова PFNCOMPROPSHEET (compstui.h)

Функция ComPropSheet предоставляется CPSUI и может вызываться приложениями CPSUI (включая библиотеки DLL интерфейса принтера) для создания страниц страниц свойств.

Синтаксис

PFNCOMPROPSHEET Pfncompropsheet;

LONG_PTR Pfncompropsheet(
  [in] HANDLE hComPropSheet,
  [in] UINT Function,
  [in] LPARAM lParam1,
  [in] LPARAM lParam2
)
{...}

Параметры

[in] hComPropSheet

Дескриптор, предоставленный вызывающим объектом, для родительской группы листов свойств. Дополнительные сведения см. в разделе "Примечания".

[in] Function

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

[in] lParam1

Значение, предоставленное вызывающей стороной, которое зависит от кода функции ComPropSheet , предоставленного для функции.

[in] lParam2

Значение, предоставленное вызывающей стороной, которое зависит от кода функции ComPropSheet , предоставленного для функции.

Возвращаемое значение

Возвращаемое значение зависит от кода функции ComPropSheet , предоставленного для Function.

Комментарии

Когда CPSUI вызывает одну из функций приложения с типом PFNPROPSHEETUI, он передает указатель на функцию ComPropSheet в PROPSHEETUI_INFO структуре. Функция типа PFNPROPSHEETUI может вызывать функцию ComPropSheet для описания страниц страниц свойств в CPSUI.

Библиотека DLL интерфейса принтера может вызывать ComPropSheet из функции DrvDocumentPropertySheets или DrvDevicePropertySheets.

Подключаемые модули пользовательского интерфейса для драйверов Microsoft Unidrv и Pscript могут вызывать ComPropSheet из методов IPrintOemUI::D ocumentPropertySheets и IPrintOemUI::D evicePropertySheets .

Родительский дескриптор группы , указанный для параметра hComPropSheet , может быть следующим:

Коды функций ComPropSheet

В функцию ComPropSheet CPSUI можно передать следующие коды функций:

CPSFUNC_ADD_HPROPSHEETPAGE

Код функции CPSFUNC_ADD_HPROPSHEETPAGE приводит к тому, что функция ComPropSheet добавляет страницу страницы свойств, созданную путем вызова функции CreatePropertySheetPage .

Параметры (CPSFUNC_ADD_HPROPSHEETPAGE)
  • hComPropSheet: родительский дескриптор группы

  • Функция: вызывающий объект задает этому параметру кода функции значение CPSFUNC_ADD_HPROPSHEETPAGE при вызове ComPropSheet для добавления страницы страницы свойств.

  • lParam1: обработка страницы свойств, полученной путем вызова функции CreatePropertySheetPage .

  • lParam2: не используется, должно быть равно нулю

Возвращаемое значение (CPSFUNC_ADD_HPROPSHEETPAGE)

Если операция выполнена успешно, ComPropSheet возвращает дескриптор CPSUI на добавленную страницу; В противном случае возвращается значение NULL.

CPSFUNC_ADD_PCOMPROPSHEETUI

Код функции CPSFUNC_ADD_PCOMPROPSHEETUI приводит к тому, что функция ComPropSheet добавляет набор из одной или нескольких страниц страниц страниц свойств, описываемых структурой COMPROPSHEETUI .

Параметры
  • hComPropSheet: родительский дескриптор группы

  • Функция: вызывающий объект задает этому параметру кода функции значение CPSFUNC_ADD_PCOMPROPSHEETUI при вызове ComPropSheet для добавления набора из одной или нескольких страниц страниц страниц свойств.

  • lParam1: указатель на структуру COMPROPSHEETUI

  • lParam2: указатель на 32-разрядное расположение для получения количества добавленных страниц или, в случае сбоя, ERR_CPSUI код ошибки с префиксом

Возвращаемое значение

Если операция выполнена успешно, ComPropSheet возвращает дескриптор для набора добавленных страниц; В противном случае функция возвращает значение NULL.

CPSFUNC_ADD_PFNPROPSHEETUI

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

Параметры (CPSFUNC_ADD_PFNPROPSHEETUI)
  • hComPropSheet: родительский дескриптор группы

  • Функция: вызывающий объект задает этому параметру кода функции значение CPSFUNC_ADD_PFNPROPSHEETUI при вызове ComPropSheet. Затем ComPropSheet вызывает указанную функцию PFNPROPSHEETUI, чтобы добавить набор из одной или нескольких страниц страниц страниц свойств.

  • lParam1: указатель на функцию типа PFNPROPSHEETUI.

  • lParam2: 32-разрядное значение, передаваемое типизированной функции PFNPROPSHEETUI для ее параметра lParam.

Возвращаемое значение (CPSFUNC_ADD_PFNPROPSHEETUI)

Если операция выполнена успешно, ComPropSheet возвращает дескриптор для набора добавленных страниц; В противном случае функция возвращает значение NULL.

CPSFUNC_ADD_PROPSHEETPAGE

Код функции CPSFUNC_ADD_PROPSHEETPAGE приводит к тому, что функция ComPropSheet добавляет тип страницы страницы свойств, описываемой структурой PROPSHEETPAGE .

Параметры (CPSFUNC_ADD_PROPSHEETPAGE)
  • hComPropSheet: родительский дескриптор группы

  • Функция. Вызывающий объект задает этому параметру кода функции значение CPSFUNC_ADD_PROPSHEETPAGE при вызове ComPropSheet для добавления типа страницы свойств, описываемой структурой PROPSHEETPAGE . Функция ComPropSheet вызывает функцию CreatePropertySheetPage и передает адрес структуры PROPSHEETPAGE для создания страницы.

  • lParam1: указатель на структуру PROPSHEETPAGE

  • lParam2: не используется, должно быть равно нулю

Возвращаемое значение (CPSFUNC_ADD_PROPSHEETPAGE)

Если операция выполнена успешно, ComPropSheet возвращает дескриптор CPSUI на добавленную страницу; В противном случае возвращается значение NULL.

CPSFUNC_DELETE_HCOMPROPSHEET

Код функции CPSFUNC_DELETE_HCOMPROPSHEET заставляет функцию ComPropSheet удалять набор страниц страниц свойств, указанных дескриптором CPSUI.

Параметры (CPSFUNC_DELETE_HCOMPROPSHEET)
  • hComPropSheet: родительский дескриптор группы

  • Функция: вызывающий объект задает этому параметру кода функции значение CPSFUNC_DELETE_HCOMPROPSHEET при вызове ComPropSheet для удаления набора страниц страниц свойств.

  • lParam1: дескриптор CPSUI, который ссылается на набор удаляемых страниц. Этот дескриптор должен быть ранее получен путем вызова ComPropSheet с одним из следующих кодов функций:

    • CPSFUNC_ADD_HPROPSHEETPAGE

    • CPSFUNC_ADD_PCOMPROPSHEETUI

    • CPSFUNC_ADD_PFNPROPSHEETUI

    • CPSFUNC_ADD_PROPSHEETPAGE

    • CPSFUNC_INSERT_PSUIPAGE

  • lParam2: не используется, должно быть равно нулю

Возвращаемое значение (CPSFUNC_DELETE_HCOMPROPSHEET)

Функция ComPropSheet возвращает количество страниц страниц свойств, которые были удалены.

CPSFUNC_DO_APPLY_CPSUI

Код функции CPSFUNC_DO_APPLY_CPSUI приводит к тому, что функция ComPropSheet имитирует доставку PSN_APPLY уведомления.

CPSUI реагирует на код функции CPSFUNC_DO_APPLY_CPSUI , предоставляя причину CPSUICB_REASON_APPLYNOW функции обратного вызова приложения _CPSUICALLBACK типа.

Параметры (CPSFUNC_DO_APPLY_CPSUI)
  • hComPropSheet: родительский дескриптор группы

  • Функция: вызывающий объект задает этому параметру кода функции значение CPSFUNC_DO_APPLY_CPSUI при вызове ComPropSheet для имитации доставки сообщения уведомления PSN_APPLY.

  • lParam1: дескриптор CPSUI, указывающий на набор из одной или нескольких страниц страниц свойств. Как правило, этот дескриптор ранее был указан в качестве параметра lParam1 для ComPropSheet с помощью кода функции CPSFUNC_IGNORE_CPSUI_PSN_APPLY .

  • lParam2: этот параметр представляет собой любое сочетание следующих битовых флагов:

    • APPLYCPSUI_NO_NEWDEF — установите этот флаг, если вы не хотите изменять текущие значения по умолчанию (используемые для операции отмены). Снимите этот флаг, если хотите, чтобы текущие значения для всех параметров стали значениями по умолчанию, используемыми для операции Отмена.

    • APPLYCPSUI_OK_CANCEL_BUTTON — установите этот флаг, если пользователь нажимает кнопку ОК или Отмена (или если вы хотите имитировать это действие). Снимите этот флаг, если пользователь нажимает кнопку Закрыть или Применить (или если вы хотите имитировать это действие). Если код настроен на получение PSN_APPLY сообщений, код должен проверка элемент lParam структуры PSHNOTIFY. Если член равен нулю, этот бит должен быть очищен.

Возвращаемое значение (CPSFUNC_DO_APPLY_CPSUI)

Если операция выполнена успешно, функция ComPropSheet возвращает ненулевое значение; в противном случае возвращается ноль, и указанные страницы станут активными.

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

CPSFUNC_GET_HPSUIPAGES

Код функции CPSFUNC_GET_HPSUIPAGES приводит к тому, что функция ComPropSheet возвращает массив дескрипторов CPSUI, указывающих на страницы страниц свойств. Эти дескрипторы идентифицируют дочерние страницы, связанные с указанным родительским дескриптором группы.

Чтобы использовать этот код функции, выполните следующие действия.

  • Вызовите ComPropSheet, указав код функции CPSFUNC_GET_PAGECOUNT , чтобы получить количество дочерних страниц, связанных с указанным родительским элементом группы.

  • Выделите достаточно локальной памяти для размещения структуры HANDLE для каждой страницы.

  • Снова вызовите ComPropSheet , указав код CPSFUNC_GET_HPSUIPAGES функции и адрес локально выделенной памяти, чтобы получить массив структур HANDLE.

Параметры (CPSFUNC_GET_HPSUIPAGES)
  • hComPropSheet: родительский дескриптор группы

  • Функция: вызывающий объект задает этому параметру кода функции значение CPSFUNC_GET_HPSUIPAGES при вызове ComPropSheet для получения массива дескрипторов CPSUI.

  • lParam1: указатель на массив структур HANDLE.

  • lParam2: размер массива HANDLE, на который указывает lParam1

Возвращаемое значение (CPSFUNC_GET_HPSUIPAGES)

Функция ComPropSheet возвращает количество дескрипторов, которые CPSUI помещает в массив HANDLE.

CPSFUNC_GET_PAGECOUNT

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

Параметры (CPSFUNC_GET_PAGECOUNT)
  • hComPropSheet: родительский дескриптор группы

  • Функция: вызывающий объект задает этому параметру кода функции значение CPSFUNC_GET_PAGECOUNT при вызове ComPropSheet для возврата количества дочерних страниц.

  • lParam1: не используется, должно быть равно нулю

  • lParam2: не используется, должно быть равно нулю

Возвращаемое значение (CPSFUNC_GET_PAGECOUNT)

Функция ComPropSheet возвращает количество подсчитываемых страниц.

CPSFUNC_GET_PFNPROPSHEETUI_ICON

Код функции CPSFUNC_GET_PFNPROPSHEETUI_ICON заставляет функцию ComPropSheet возвращать дескриптор значку, связанному с набором страниц страниц свойств. Набор страниц должен быть ранее создан функцией PFNPROPSHEETUI.

Функция ComPropSheet вызывает функцию типа PFNPROPSHEETUI, связанную с указанным дескриптором страницы, и передает значение причины PROPSHEETUI_REASON_GET_ICON. Затем функция PFNPROPSHEETUI вызывает LoadImage и предоставляет размер значка, указанный параметромlParam2, для загрузки ресурса значка.

Параметры (CPSFUNC_GET_PFNPROPSHEETUI_ICON)
  • hComPropSheet: родительский дескриптор группы

  • Функция: вызывающий объект задает этому параметру кода функции значение CPSFUNC_GET_PFNPROPSHEETUI_ICON при вызове ComPropSheet для получения дескриптора значка, связанного с набором страниц страниц свойств.

  • lParam1: дескриптор CPSUI, который ссылается на набор страниц страниц свойств. Этот дескриптор должен быть ранее получен вызовом ComPropSheet с кодом функции CPSFUNC_ADD_PFNPROPSHEETUI .

  • lParam2: задает два значения размера WORD, представляющие размер значка в пикселях. Значение LOWORD — это ширина, а значение HIWORD — высота. Если эти значения равны нулю, используются системные метрики SM_CXICON и SM_CYICON. Дополнительные сведения см. в разделе GetSystemMetrics.

Возвращаемое значение (CPSFUNC_GET_PFNPROPSHEETUI_ICON)

Если операция выполнена успешно, функция ComPropSheet возвращает дескриптор значка; В противном случае возвращается значение NULL.

CPSFUNC_IGNORE_CPSUI_PSN_APPLY

Код функции CPSFUNC_IGNORE_CPSUI_PSN_APPLY приводит к тому, что функция ComPropSheet отключает или повторно включает обработку PSN_APPLY сообщения уведомления CPSUI.

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

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

Если код функции CPSFUNC_IGNORE_CPSUI_PSN_APPLY не используется, обработка cpSUI сообщения уведомления PSN_APPLY включена по умолчанию.

Параметры (CPSFUNC_IGNORE_CPSUI_PSN_APPLY)
  • hComPropSheet: родительский дескриптор группы

  • Функция: вызывающий объект задает этому параметру кода функции значение CPSFUNC_IGNORE_CPSUI_PSN_APPLY при вызове ComPropSheet для отключения или повторного включения обработки cpSUI сообщения уведомления PSN_APPLY.

  • lParam1: дескриптор CPSUI, который ссылается на набор из одной или нескольких страниц страниц страниц свойств. Этот дескриптор должен быть ранее получен вызовом ComPropSheet с кодом функции CPSFUNC_ADD_PCOMPROPSHEETUI или с кодом функции CPSFUNC_INSERT_PSUIPAGE и типом вставки PSUIPAGEINSERT_PROPSHEETPAGE.

  • lParam2: любое ненулевое значение отключает доставку CPSUI CPSUICB_REASON_APPLYNOW причине. Нулевое значение повторно включает доставку CPSUICB_REASON_APPLYNOW причины.

Возвращаемое значение (CPSFUNC_IGNORE_CPSUI_PSN_APPLY)

Если операция выполнена успешно, функция ComPropSheet возвращает ненулевое значение; в противном случае возвращается ноль.

CPSFUNC_INSERT_PSUIPAGE

Код функции CPSFUNC_INSERT_PSUIPAGE заставляет функцию ComPropSheet вставлять набор страниц страниц свойств в определенной позиции.

Параметры (CPSFUNC_INSERT_PSUIPAGE)
  • hComPropSheet: родительский дескриптор группы

  • Функция: вызывающий объект задает этому параметру кода функции значение CPSFUNC_INSERT_PSUIPAGE при вызове ComPropSheet для вставки набора страниц страниц свойств в определенной позиции.

  • lParam1: задает дескриптор набора из одной или нескольких страниц страниц свойств. Новые страницы будут вставлены до или после этих страниц в зависимости от элемента Mode структуры INSERTPSUIPAGE_INFO , на которую указывает lParam2. Этот дескриптор должен быть ранее получен вызовом ComPropSheet с одним из следующих кодов функций:

    • CPSFUNC_ADD_HPROPSHEETPAGE

    • CPSFUNC_ADD_PCOMPROPSHEETUI

    • CPSFUNC_ADD_PFNPROPSHEETUI

    • CPSFUNC_ADD_PROPSHEETPAGE

    • CPSFUNC_INSERT_PSUIPAGE

  • lParam2: указатель на структуру INSERTPSUIPAGE_INFO , описывающую место и способ вставки новых страниц.

Возвращаемое значение (CPSFUNC_INSERT_PSUIPAGE)

Если операция выполнена успешно, функция ComPropSheet возвращает дескриптор для набора вставленных страниц; В противном случае функция возвращает значение NULL.

CPSFUNC_LOAD_CPSUI_ICON

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

CPSUI вызывает LoadImage для загрузки указанного ресурса значка.

Параметры (CPSFUNC_LOAD_CPSUI_ICON)
  • hComPropSheet: родительский дескриптор группы

  • Функция: вызывающий объект задает этому параметру кода функции значение CPSFUNC_LOAD_CPSUI_ICON при вызове ComPropSheet для загрузки ресурса значка, предоставленного CPSUI.

  • lParam1: идентификатор ресурса для загружаемого значка CPSUI. Это должен быть идентификатор с IDI_CPSUI префиксом, как определено в Compstui.h.

  • lParam2: задает два значения размера WORD, представляющие размер значка в пикселях. Значение LOWORD — это ширина, а значение HIWORD — высота. Если эти значения равны нулю, используются системные метрики SM_CXICON и SM_CYICON. Дополнительные сведения см. в разделе GetSystemMetrics.

Возвращаемое значение (CPSFUNC_LOAD_CPSUI_ICON)

Если операция выполнена успешно, функция ComPropSheet возвращает дескриптор значка; В противном случае возвращается значение NULL.

CPSFUNC_LOAD_CPSUI_STRING

Код функции CPSFUNC_LOAD_CPSUI_STRING заставляет функцию ComPropSheet загружать предоставленный CPSUI строковый ресурс.

Функция ComPropSheet вызывает функцию LoadString](/windows/win32/api/winuser/nf-winuser-loadstringw) для загрузки указанной строки.

Параметры (CPSFUNC_LOAD_CPSUI_STRING)
  • hComPropSheet: родительский дескриптор группы

  • Функция: вызывающий объект задает этому параметру кода функции значение CPSFUNC_LOAD_CPSUI_STRING при вызове ComPropSheet для загрузки предоставленного CPSUI строкового ресурса.

  • lParam1: указатель типа LPSTR на буфер, выделенный вызывающим объектом, в который будет помещена строка, предоставленная CPSUI, указанная в HIWORD(lParam2).

  • lParam2: содержит следующие два значения, предоставленные вызывающим абонентом:

    • LOWORD(lParam2). Размер буфера, на который указывает lParam1, в байтах.

    • HIWORD(lParam2). Идентификатор ресурса строки, предоставленной CPSUI для загрузки. Это должен быть идентификатор с IDS_CPSUI префиксом, как определено в Compstui.h.

Возвращаемое значение (CPSFUNC_LOAD_CPSUI_STRING)

Если операция выполнена успешно, функция ComPropSheet возвращает длину строки. Если указан недопустимый идентификатор ресурса, функция возвращает ноль. Если lParam1 имеет значение NULL или ЗНАЧЕНИЕ LOWORD(lParam2) равно нулю, функция возвращает значение -1.

CPSFUNC_QUERY_DATABLOCK

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

Как правило, этот код функции используется функцией обратного вызова _CPSUICALLBACK типа (когда структура ФУНКЦИИ CPSUICBPARAM содержит значение Reason CPSUICB_REASON_SETACTIVE) для получения значений, связанных с другой страницей, прежде чем текущая страница станет неактивной.

Параметры (CPSFUNC_QUERY_DATABLOCK)
  • hComPropSheet: родительский дескриптор группы

  • Функция. Вызывающий объект задает этому параметру кода функции значение CPSFUNC_QUERY_DATABLOCK при вызове ComPropSheet для получения блока данных, предоставленного вызывающим.

  • lParam1: указатель на структуру CPSUIDATABLOCK , которая определяет размер и расположение буфера для получения запрошенного блока данных.

  • lParam2: значение идентификатора размера DWORD, используемое для идентификации запрошенной структуры CPSUIDATABLOCK . Это значение должно быть указано в предыдущем вызове ComPropSheet с помощью кода функции CPSFUNC_SET_DATABLOCK .

Возвращаемое значение (CPSFUNC_QUERY_DATABLOCK)

Если операция выполнена успешно, функция ComPropSheet возвращает значение, представляющее размер полученного блока данных. Если lParam1 имеет значение NULL или значение любого члена предоставленной структуры CPSUIDATABLOCK равно нулю, ComPropSheet возвращает размер, необходимый для хранения блока данных. При возникновении ошибки функция возвращает значение, меньшее или равное нулю.

CPSFUNC_SET_DATABLOCK

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

Как правило, этот код функции используется функцией обратного вызова _CPSUICALLBACK типа (когда структура ФУНКЦИИ CPSUICBPARAM содержит значение Reason CPSUICB_REASON_KILLACTIVE) для сохранения значений, связанных со страницей, прежде чем она станет неактивной.

Параметры (CPSFUNC_SET_DATABLOCK)
  • hComPropSheet: родительский дескриптор группы

  • Функция: вызывающий объект задает этому параметру кода функции значение CPSFUNC_SET_DATABLOCK при вызове ComPropSheet для хранения блока данных, предоставленного вызывающим.

  • lParam1: указатель на структуру CPSUIDATABLOCK , описывающую блок данных для хранения.

  • lParam2: значение идентификатора размера DWORD, определяемое вызывающим абонентом. Он используется для идентификации предоставленной структуры CPSUIDATABLOCK в последующих вызовах ComPropSheet с помощью кода функции CPSFUNC_QUERY_DATABLOCK .

Возвращаемое значение (CPSFUNC_SET_DATABLOCK)

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

CPSFUNC_SET_DMPUB_HIDEBITS

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

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

Если вы используете код функции CPSFUNC_SET_DMPUB_HIDEBITS , его необходимо указать в comPropSheet , прежде чем CPSFUNC_ADD_PCOMPROPSHEETUI или код функции CPSFUNC_INSERT_PSUIPAGE будет использоваться для создания страницы.

Параметры (CPSFUNC_SET_DMPUB_HIDEBITS)
  • hComPropSheet: родительский дескриптор группы

  • Функция: вызывающий объект задает этому параметру кода функции значение CPSFUNC_SET_DMPUB_HIDEBITS при вызове ComPropSheet для "скрытия" указанного набора параметров свойств документа.

  • lParam1: указатель на битовый массив, указывающий скрытые параметры. Этот массив необходимо создать с помощью макроса MAKE_DMPUB_HIDEBIT(DMPub), где DMPub — это сочетание ИЛИ одной или нескольких констант DMPUB_ с префиксом. Константы с префиксом DMPUB_ перечислены в описании структуры OPTITEM . Макрос и константы определяются в Compstui.h.

  • lParam2: не используется, должно быть равно нулю

Возвращаемое значение (CPSFUNC_SET_DMPUB_HIDEBITS)

Если операция выполнена успешно, функция ComPropSheet возвращает значение, указанное для lParam1; в противном случае возвращается ноль.

CPSFUNC_SET_FUSION_CONTEXT

CPSFUNC_SET_FUSION_CONTEXT задает контекст активации Fusion для указанной страницы.

Если страница будет создана или вставлена и в ней не указан контекст активации в структуре PROPSHEETPAGE , она будет создана в контексте активации родительской страницы.

Если контекст активации родительского элемента не задан, Compstui.dll выполняет поиск родительского элемента, продолжая до достижения родительского элемента верхнего уровня или пока не найдет родителя с правильно заданным контекстом активации.

Если ни один из родительских элементов не имеет контекста активации, Compstui.dll не будет указывать контекст активации в структуре PROPSHEETPAGE . Это означает, что страница будет создана в контексте активации вызывающего объекта функции PropertySheet .

Параметры (CPSFUNC_SET_FUSION_CONTEXT)
  • hComPropSheet: родительский дескриптор группы

  • Функция: вызывающий объект задает этому параметру кода функции значение CPSFUNC_SET_FUSION_CONTEXT при вызове ComPropSheet для задания контекста активации Fusion для указанной страницы.

  • lParam1: указывает дескриптор для контекста Fusion. Compstui.dll дублирует дескриптор, прикрепляя его к его внутренним структурам, чтобы вызывающий объект не обязан сохранять дескриптор. Compstui.dll освобождает переданный дескриптор контекста при удалении дескриптора Compstui.dll.

  • lParam2: не используется, должно быть равно нулю

Возвращаемое значение (CPSFUNC_SET_FUSION_CONTEXT)

Если операция выполнена успешно, функция ComPropSheet возвращает значение больше нуля. В противном случае ComPropSheet возвращает значение, которое меньше или равно нулю. Для получения сведений об ошибке используйте функцию GetLastError .

CPSFUNC_SET_HSTARTPAGE

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

Параметры (CPSFUNC_SET_HSTARTPAGE)
  • hComPropSheet: родительский дескриптор группы

  • Функция: вызывающий объект задает этому параметру кода функции значение CPSFUNC_SET_HSTARTPAGE при вызове ComPropSheet , чтобы пометить страницу указанного листа свойств как верхнюю страницу связанного листа свойств.

  • lParam1: дескриптор страницы CPSUI, предоставленный вызывающим абонентом, ранее полученный вызовом ComPropSheet с одним из следующих кодов функций:

    • CPSFUNC_ADD_HPROPSHEETPAGE

    • CPSFUNC_ADD_PCOMPROPSHEETUI

    • CPSFUNC_ADD_PFNPROPSHEETUI

    • CPSFUNC_ADD_PROPSHEETPAGE

    • CPSFUNC_INSERT_PSUIPAGE

    Если дескриптор представляет одну страницу, принадлежащую группе, заданной hComPropSheet, CPSUI делает эту страницу верхней.

    Если дескриптор представляет родительский дескриптор группы (см . CPSFUNC_INSERT_PSUIPAGE), то lParam2 представляет отсчитываемый от нуля индекс на страницах группы, а страница, представленная индексом, становится верхней страницей.

  • lParam2. Если lParam1 представляет родительский дескриптор группы, это значение, предоставленное вызывающим объектом, представляет собой отсчитываемый от нуля индекс на страницах группы. Если lParam1 представляет одну страницу, принадлежащую группе, заданной hComPropSheet, этот параметр не используется. Если дескриптор, указанный lParam1 , был получен с помощью кода функции CPSFUNC_ADD_PCOMPROPSHEETUI и если член pDlgPage связанной структуры COMPROPSHEETUI был задан как CPSUI_PDLGPAGE_DOCPROP, для lParam2 можно указать одно из следующих значений:

    • SSP_STDPAGE1 . Сделайте страницу Макет верхней страницей.

    • SSP_STDPAGE2 . Сделайте страницу "Бумага/качество" верхней страницей.

    • SSP_TVPAGE — сделайте страницу Дополнительно верхней страницей.

Возвращаемое значение (CPSFUNC_SET_HSTARTPAGE)

Если операция выполнена успешно, функция ComPropSheet возвращает значение, указанное для lParam1; в противном случае возвращается ноль.

CPSFUNC_SET_PSUIPAGE_ICON

Код функции CPSFUNC_SET_PSUIPAGE_ICON заставляет функцию ComPropSheet добавлять, заменять или удалять значок, назначенный вкладке страницы страницы свойств.

Если lParam2 содержит дескриптор значка и отображается страница, указанная параметром lParam1, CPSUI добавляет значок на вкладку указанной страницы. Если значок уже назначен странице, старый значок заменяется новым. Если значение lParam2 равно нулю, текущий значок (если он существует) удаляется.

Для всех значков, указанных в коде функции CPSFUNC_SET_PSUIPAGE_ICON , CPSUI устанавливает размер изображения в 16 на 16 пикселей.

Маркеры значков должны быть получены путем вызова LoadImage.

Параметры (CPSFUNC_SET_PSUIPAGE_ICON)
  • hComPropSheet: родительский дескриптор группы

  • Функция: вызывающий объект задает этому параметру кода функции значение CPSFUNC_SET_PSUIPAGE_ICON при вызове ComPropSheet для добавления, замены или удаления значка, назначенного на вкладке страницы страницы свойств.

  • lParam1: дескриптор страницы CPSUI, предоставленный вызывающим абонентом, ранее полученный вызовом ComPropSheet с одним из следующих кодов функций:

    • CPSFUNC_ADD_HPROPSHEETPAGE

    • CPSFUNC_ADD_PROPSHEETPAGE

    • CPSFUNC_INSERT_PSUIPAGE (для элемента Type структуры INSERTPSUIPAGE_INFO задано значение PSUIPAGEINSERT_HPROPSHEETPAGE или PSUIPAGEINSERT_PROPSHEETPAGE)

  • lParam2: дескриптор значка, предоставленный вызывающим абонентом. Чтобы удалить текущий значок, для этого параметра можно задать нулевое значение.

Возвращаемое значение (CPSFUNC_SET_PSUIPAGE_ICON)

Если операция выполнена успешно, функция ComPropSheet возвращает значение 1. При обнаружении ошибки или если указанная страница не отображается в данный момент, функция возвращает ноль.

CPSFUNC_SET_PSUIPAGE_TITLE

Код функции CPSFUNC_SET_PSUIPAGE_TITLE заставляет функцию ComPropSheet задать заголовок вкладки для страницы страницы свойств.

Параметры (CPSFUNC_SET_PSUIPAGE_TITLE)
  • hComPropSheet: родительский дескриптор группы

  • Функция: вызывающий объект задает этому параметру кода функции значение CPSFUNC_SET_PSUIPAGE_TITLE при вызове ComPropSheet для задания заголовка вкладки для страницы страницы свойств.

  • lParam1: дескриптор страницы CPSUI, предоставленный вызывающим абонентом, ранее полученный вызовом ComPropSheet с одним из следующих кодов функций:

    • CPSFUNC_ADD_HPROPSHEETPAGE

    • CPSFUNC_ADD_PROPSHEETPAGE

    • CPSFUNC_INSERT_PSUIPAGE (для элемента Type структуры INSERTPSUIPAGE_INFO задано значение PSUIPAGEINSERT_HPROPSHEETPAGE или PSUIPAGEINSERT_PROPSHEETPAGE).

  • lParam2: предоставленный вызывающим указателем на строку, завершающуюся значением NULL, которая указывает новый заголовок.

Возвращаемое значение (CPSFUNC_SET_PSUIPAGE_TITLE)

Если операция выполнена успешно, функция ComPropSheet возвращает значение 1. При обнаружении ошибки или если указанная страница не отображается в данный момент, функция возвращает ноль.

CPSFUNC_SET_RESULT

Код функции CPSFUNC_SET_RESULT приводит к тому, что функция ComPropSheet передает указанное результовое значение всем функциям типа PFNPROPSHEETUI, связанным с указанной страницей и ее родительскими элементами.

Дополнительные сведения о настройке результирующих значений см. в описании структуры SETRESULT_INFO .

Следующее предупреждение относится к подключаемым модулям пользовательского интерфейса IHV на основе Unidrv или Pscript5 с настраиваемыми таблицами свойств пользовательского интерфейса, и для которых пользовательские параметры, сделанные на листах свойств, должны быть постоянными. Когда подключаемый модуль вызывает функцию ComPropSheet с параметром Function, для параметра Function задано значение CPSFUNC_SET_RESULT, подключаемый модуль должен задать для параметра lParam2 значение CPSUI_OK.

Параметры (CPSFUNC_SET_RESULT)
  • hComPropSheet: родительский дескриптор группы

  • Функция. Вызывающий объект задает этому параметру кода функции значение CPSFUNC_SET_RESULT при вызове ComPropSheet для передачи указанного результированного значения всем функциям типа PFNPROPSHEETUI, связанным с указанной страницей и ее родительскими элементами.

  • lParam1: дескриптор CPSUI, предоставленный вызывающей стороны, на страницу, для которой передается результирующий результат. Если lParam1 имеет значение NULL, CPSUI использует значение, указанное в hComPropSheet.

  • lParam2: 32-разрядное значение результата DWORD, предоставляемое вызывающим абонентом.

Возвращаемое значение (CPSFUNC_SET_RESULT)

Если операция выполнена успешно, функция ComPropSheet возвращает количество вызванных функций типа PFNPROPSHEETUI. Если дескриптор, указанный для lParam1 , недопустим, функция возвращает значение -1.

Требования

Требование Значение
Целевая платформа Персональный компьютер
Верхняя часть compstui.h (включая Compstui.h)