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

Структура CPSUICBPARAM используется в качестве входного параметра для _CPSUICALLBACK типизированных функций обратного вызова.

Синтаксис

typedef struct _CPSUICBPARAM {
  WORD      cbSize;
  WORD      Reason;
  HWND      hDlg;
  POPTITEM  pOptItem;
  WORD      cOptItem;
  WORD      Flags;
  POPTITEM  pCurItem;
  union {
    LONG   OldSel;
    LPTSTR pOldSel;
  } DUMMYUNIONNAME;
  ULONG_PTR UserData;
  ULONG_PTR Result;
} CPSUICBPARAM, *PCPSUICBPARAM;

Члены

cbSize

Предоставленный CPSUI размер структуры CPSUICBPARAM в байтах.

Reason

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

CPSUICB_REASON_ABOUT

Пользователь нажал кнопку О программе страницы, и приложение ранее установило флаг CPSUIF_ABOUT_CALLBACK в структуре COMPROPSHEETUI . CPSUI задает pCurItem значение, содержащееся в pOptItem, а pOldSel указывает на структуру COMPROPSHEETUI .

CPSUICB_REASON_APPLYNOW

Пользователь нажал на странице кнопку Применить или ОК , и CPSUI получил PSN_APPLY уведомление. CPSUI задает pCurItem для указания на параметр, на который указывает pOptItem . Он также задает значение OldSel минус один, чтобы указать, что все допустимые измененные значения параметров должны быть применены сейчас.

CPSUICB_REASON_DLGPROC

Параметр, определяемый pCurItem , является кнопкой нажатия (TVOT_PUSHBUTTON типа параметра), и пользователь нажал кнопку.

Для параметра push button поле OPTPARAM Style (Стиль OPTPARAM) задано значение PUSHBUTTON_TYPE_DLGPROC.

CPSUICB_REASON_ECB_CHANGED

Параметр, определяемый pCurItem, является расширенным полем проверка, и пользователь изменил состояние поля.

CPSUICB_REASON_EXTPUSH

Параметр, определенный pCurItem , является расширенной кнопкой нажатия, и пользователь нажал кнопку.

CPSUICB_REASON_ITEMS_REVERTED

Пользователь нажал кнопку Отменить , и CPSUI вернул все выбранные значения к исходным значениям.

CPSUICB_REASON_KILLACTIVE

Страница страницы свойств теряет активацию, и CPSUI получает уведомление PSN_KILLACTIVE . CPSUI задает pCurItem значение, содержащееся в pOptItem, а pOldSel указывает на структуру COMPROPSHEETUI .

CPSUICB_REASON_OPTITEM_SETFOCUS

Параметр, определенный pCurItem , получил фокус ввода.

CPSUICB_REASON_PUSHBUTTON

Параметр, определяемый pCurItem , является кнопкой нажатия (TVOT_PUSHBUTTON типа параметра), и пользователь нажал кнопку.

В поле "СтильOPTPARAM" элемента кнопки задано значение PUSHBUTTON_TYPE_CALLBACK.

CPSUICB_REASON_SEL_CHANGED

Пользователь изменил выбранное значение параметра, на который указывает pCurItem.

CPSUICB_REASON_SETACTIVE

Страница страницы свойств станет активной, и CPSUI получит PSN_SETACTIVE уведомление. CPSUI задает pCurItem значение, содержащееся в pOptItem, а pOldSel указывает на структуру COMPROPSHEETUI .

hDlg

Предоставленный CPSUI дескриптор для активного в данный момент диалогового окна.

pOptItem

Предоставленный CPSUI указатель на массив структур OPTITEM . Это тот же указатель, что и приложение, ранее предоставленное в структуре COMPROPSHEETUI .

cOptItem

Предоставленное CPSUI число структур OPTITEM в массиве, на который указывает pOptItem. Это то же число, которое ранее было предоставлено приложением в структуре COMPROPSHEETUI .

Flags

Флаги, предоставляемые CPSUI. Это тот же набор флагов, что и приложение, ранее предоставленное в структуре COMPROPSHEETUI .

pCurItem

Предоставленный CPSUI указатель на элемент массива OPTITEM, на который указывает pOptItem. Этот элемент массива представляет параметр current, который является параметром, для которого была вызвана функция обратного вызова.

DUMMYUNIONNAME

Определяет объединение DUMMYUNIONNAME .

DUMMYUNIONNAME.OldSel

Если элемент Reason содержит CPSUICB_REASON_SEL_CHANGED, CPSUI задает для этого объединения предыдущее содержимое элемента OldSel/pOldSel структуры OPTITEM , на которую указывает pCurItem.

Для всех остальных значений Reason содержимое этого объединения следует игнорировать.

DUMMYUNIONNAME.pOldSel

Если элемент Reason содержит CPSUICB_REASON_SEL_CHANGED, CPSUI задает для этого объединения предыдущее содержимое элемента OldSel/pOldSel структуры OPTITEM , на которую указывает pCurItem.

Для всех остальных значений Reason содержимое этого объединения следует игнорировать.

UserData

Пользовательские данные, предоставляемые CPSUI. Это то же значение, что и приложение, ранее предоставленное в структуре COMPROPSHEETUI .

Result

Значение результата, предоставленное функцией обратного вызова с типом _CPSUICALLBACK. По умолчанию CPSUI задает для этого значения значение CPSUI_OK. После возврата функции обратного вызова CPSUI вызывает свою функцию ComPropSheet с кодом функции CPSFUNC_SET_RESULT, предоставляя содержимое члена Reason в качестве результирующих значений.

Этот элемент используется только в том случае, если элемент Reason CPSUICB_REASON_APPLYNOW и функция обратного вызова не возвращает CPSUI_ACTION_NO_APPLY_EXIT.

Требования

Требование Значение
Заголовок compstui.h (включая Compstui.h)