Поделиться через


Структура PROPSHEETPAGE

Определяет страницу на странице свойств.

Синтаксис

typedef struct {
    DWORD      dwSize;
    DWORD      dwFlags;
    HINSTANCE  hInstance;
    union {
        LPCSTR                 pszTemplate;
        PROPSHEETPAGE_RESOURCE pResource;
    };
    union {
        HICON  hIcon;
        LPCSTR pszIcon;
    };
    LPCSTR          pszTitle;
    DLGPROC         pfnDlgProc;
    LPARAM          lParam;
    LPFNPSPCALLBACK pfnCallback;
    UINT            *pcRefParent;
    LPCTSTR         pszHeaderTitle;
    LPCTSTR         pszHeaderSubTitle;
    HANDLE          hActCtx;
    union 
    {
        HBITMAP     hbmHeader;
        LPCSTR      pszbmHeader;
    }
} PROPSHEETPAGE, *LPPROPSHEETPAGE;

Члены

dwSize

Тип: DWORD

Размер этой структуры в байтах.

dwFlags

Тип: DWORD

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

Значение Значение
PSP_DEFAULT Использует значение по умолчанию для всех элементов структуры. Этот флаг не поддерживается при использовании мастера в стиле Aero (PSH_AEROWIZARD).
PSP_DLGINDIRECT Создает страницу из шаблона диалогового окна в памяти, на которую указывает элемент pResource . Функция PropertySheet предполагает, что шаблон, который находится в памяти, не защищен от записи. Шаблон только для чтения вызовет исключение в некоторых версиях Windows.
PSP_HASHELP Включает кнопку справки страницы свойств, когда страница активна. Этот флаг не поддерживается при использовании мастера в стиле Aero (PSH_AEROWIZARD).
PSP_HIDEHEADER Версия 5.80 и более поздняя. Заставляет страницу свойств мастера скрывать область заголовка при выборе страницы. Если подложка указана, она будет нарисована в левой части страницы. Этот флаг должен быть установлен для страниц приветствия и завершения, а также опущен для внутренних страниц. Этот флаг не поддерживается при использовании мастера в стиле Aero (PSH_AEROWIZARD).
PSP_PREMATURE Версия 4.71 или более поздняя. Создает страницу при создании страницы свойств. Если этот флаг не указан, страница не будет создана, пока она не будет выбрана в первый раз. Этот флаг не поддерживается при использовании мастера в стиле Aero (PSH_AEROWIZARD).
PSP_RTLREADING Изменяет направление, в котором отображается pszTitle . В обычных окнах отображается весь текст, включая pszTitle, слева направо (LTR). Для таких языков, как иврит или арабский язык, которые читают справа налево (RTL), окно может быть зеркально отображено, и весь текст будет отображаться как RTL. Если задано PSP_RTLREADING, pszTitle будет вместо этого считывать RTL в обычном родительском окне и LTR в зеркальном родительском окне.
PSP_USECALLBACK Вызывает функцию, указанную членом pfnCallback , при создании или уничтожении страницы страницы свойств, определенной этой структурой.
PSP_USEFUSIONCONTEXT Версия 6.0 и более поздняя. Используйте контекст активации. Чтобы использовать контекст активации, необходимо установить этот флаг и назначить дескриптор контекста активации hActCtx. См. примечания.
PSP_USEHEADERSUBTITLE Версия 5.80 или более поздняя. Отображает строку, на которую указывает элемент pszHeaderSubTitle в качестве подзаголовка области заголовка страницы Wizard97. Чтобы использовать этот флаг, необходимо также задать флаг PSH_WIZARD97 в элементе dwFlags связанной структуры PROPSHEETHEADER . Флаг PSP_USEHEADERSUBTITLE игнорируется, если задан PSP_HIDEHEADER. В мастере в стиле Aero заголовок отображается в верхней части клиентской области.
PSP_USEHEADERTITLE Версия 5.80 или более поздняя. Отображает строку, на которую указывает элемент pszHeaderTitle в качестве заголовка в заголовке внутренней страницы Wizard97. Необходимо также задать флаг PSH_WIZARD97 в элементе dwFlags связанной структуры PROPSHEETHEADER . Флаг PSP_USEHEADERTITLE игнорируется, если задано PSP_HIDEHEADER. Этот флаг не поддерживается при использовании мастера в стиле Aero (PSH_AEROWIZARD).
PSP_USEHICON Использует hIcon в качестве небольшого значка на вкладке страницы. Этот флаг не поддерживается при использовании мастера в стиле Aero (PSH_AEROWIZARD).
PSP_USEICONID Использует pszIcon в качестве имени ресурса значка для загрузки и использования в качестве небольшого значка на вкладке страницы. Этот флаг не поддерживается при использовании мастера в стиле Aero (PSH_AEROWIZARD).
PSP_USEREFPARENT Поддерживает количество ссылок, указанное элементом pcRefParent , в течение времени существования страницы страницы свойств, созданной на основе этой структуры.
PSP_USETITLE Использует элемент pszTitle в качестве заголовка диалогового окна страницы свойств вместо заголовка, хранящегося в шаблоне диалогового окна. Этот флаг не поддерживается при использовании мастера в стиле Aero (PSH_AEROWIZARD).

hInstance

Тип: HINSTANCE

Дескриптор экземпляра, из которого загружается значок или строковый ресурс. Если элемент pszIcon, pszTitle, pszHeaderTitle или pszHeaderSubTitle определяет ресурс для загрузки, необходимо указать hInstance .

pszTemplate

Тип: LPCSTR

Шаблон диалогового окна для создания страницы. Этот член может указать идентификатор ресурса шаблона или адрес строки, указывающей имя шаблона. Если флаг PSP_DLGINDIRECT в элементе dwFlags установлен, pszTemplate игнорируется. Этот элемент объявляется как объединение с pResource.

pResource

Тип: LPCDLGTEMPLATE

Указатель на шаблон диалогового окна в памяти. Функция PropertySheet предполагает, что шаблон не защищен от записи. Шаблон только для чтения вызовет исключение в некоторых версиях Windows. Чтобы использовать этот элемент, необходимо задать флаг PSP_DLGINDIRECT в элементе dwFlags . Этот член объявляется как объединение с pszTemplate.

hIcon

Тип: HICON

Дескриптор значка, который будет использоваться в качестве значка на вкладке страницы. Если элемент dwFlags не содержит PSP_USEHICON, этот элемент игнорируется. Этот член объявляется как объединение с pszIcon.

pszIcon

Тип: LPCSTR

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

pszTitle

Тип: LPCSTR

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

pfnDlgProc

Тип: DLGPROC

Указатель на процедуру диалогового окна для страницы. Так как страницы создаются как немодовые диалоговые окна, процедура диалогового окна не должна вызывать функцию EndDialog .

lParam

Тип: LPARAM

При создании страницы в процедуру диалогового окна передается копия структуры PROPSHEETPAGE страницы с сообщением WM_INITDIALOG . Член lParam предоставляется для передачи сведений о конкретном приложении в процедуру диалогового окна. Не влияет на саму страницу.

pfnCallback

Тип: LPFNPSPCALLBACK

Указатель на определяемую приложением функцию обратного вызова, которая вызывается при создании страницы и при ее уничтожении. Дополнительные сведения о функции обратного вызова см. в разделе Функция обратного вызова LPFNPSPCALLBACKA. Чтобы использовать этот элемент, необходимо задать флаг PSP_USECALLBACK в элементе dwFlags .

pcRefParent

Тип: UINT*

Указатель на значение счетчика ссылок. Чтобы использовать этот элемент, необходимо задать флаг PSP_USEREFPARENT в элементе dwFlags .

Примечание

При создании страницы страницы свойств увеличивается значение, на которое указывает pcRefParent . Страница страницы свойств создается неявно путем установки флага PSH_PROPSHEETPAGE в элементе dwFlagsPROPSHEETHEADER и вызова функции PropertySheet . Это можно сделать явно с помощью функции CreatePropertySheetPage . При уничтожении страницы страницы свойств значение, указываемое элементом pcRefParent , уменьшается. Это происходит автоматически при уничтожении страницы свойств. Страницу страницы свойств можно явно удалить с помощью функции DestroyPropertySheetPage .

pszHeaderTitle

Тип: LPCTSTR

Версия 5.80 или более поздняя. Заголовок области заголовка. Чтобы использовать этот элемент в мастере в стиле Wizard97, необходимо также сделать следующее:

  • Установите флаг PSP_USEHEADERTITLE в элементе dwFlags .
  • Установите флаг PSH_WIZARD97 в элементе dwFlags структуры PROPSHEETHEADER страницы.
  • Убедитесь, что флаг PSP_HIDEHEADER в элементе dwFlags не задан.

pszHeaderSubTitle

Тип: LPCTSTR

Версия 5.80 или более поздняя. Подзаголовок области заголовка. Чтобы использовать этот элемент, необходимо выполнить следующие действия.

  • Установите флаг PSP_USEHEADERSUBTITLE в элементе dwFlags .
  • Установите флаг PSH_WIZARD97 в элементе dwFlags структуры PROPSHEETHEADER страницы.
  • Убедитесь, что флаг PSP_HIDEHEADER в элементе dwFlags не задан.

Примечание

Этот элемент игнорируется при использовании мастера в стиле Aero (PSH_AEROWIZARD)

hActCtx

Тип: HANDLE

Версия 6.0 или более поздняя. Дескриптор контекста активации. Задайте для этого элемента дескриптор, который возвращается при создании контекста активации с помощью CreateActCtx. Система активирует этот контекст перед созданием диалогового окна. При использовании глобального манифеста использовать этот элемент не нужно.

hbmHeader

Тип: HBITMAP

Этот член объявляется как объединение с pszbmHeader.

pszbmHeader

Тип: LPCSTR

Этот член объявляется как союз с hbmHeader.

Комментарии

Comctl32.dll версии 6 и более поздних не распространяются. Чтобы использовать Comctl32.dll версии 6 или более поздней, укажите файл .dll в манифесте. Дополнительные сведения о манифестах см. в разделе Включение визуальных стилей.

Требования

Требование Значение
Минимальная версия клиента Windows Vista [только классические приложения]
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Заголовок Prsht.h
Имя в кодировке Юникод и ANSI PROPSHEETHEADERW (Юникод) и PROPSHEETHEADERA (ANSI)