Функция PropertySheetA (prsht.h)
Создает лист свойств и добавляет страницы, определенные в указанной структуре заголовка листа свойств.
Синтаксис
INT_PTR PropertySheetA(
LPCPROPSHEETHEADERA unnamedParam1
);
Параметры
unnamedParam1
Тип: LPCPROPSHEETHEADER
Указатель на структуру PROPSHEETHEADER, которая определяет кадр и страницы листа свойств.
Возвращаемое значение
Тип: INT_PTR
Для таблиц модальных свойств возвращаемое значение выглядит следующим образом:
>=1 | Изменения были сохранены пользователем. |
0 | Никакие изменения не были сохранены пользователем. |
-1 | Произошла ошибка. |
Для листов свойств без режима возвращаемое значение является дескриптором окна листа свойств.
Следующие возвращаемые значения имеют особое значение.
Возвращаемый код | Описание |
---|---|
|
Страница отправила сообщение PSM_REBOOTSYSTEM на лист свойств. Чтобы изменения пользователя вступили в силу, необходимо перезапустить компьютер. |
|
Страница отправила PSM_RESTARTWINDOWS сообщение на лист свойств. Для того чтобы изменения пользователя вступили в силу, необходимо перезапустить Windows. |
Замечания
Чтобы получить расширенные сведения об ошибке, вызовите GetLastError.
Если вы попытаетесь добавить более 99 страниц в лист свойств, эта функция завершится ошибкой, но без указания причины ошибки: PropertySheet возвращает значение -1, но GetLastError возвращает 0.
Для листа свойств без режима цикл сообщений должен использовать PSM_ISDIALOGMESSAGE для передачи сообщений в диалоговое окно листа свойств. Цикл сообщений должен использовать PSM_GETCURRENTPAGEHWND, чтобы определить, когда нужно уничтожить диалоговое окно. Когда пользователь нажимает кнопку ОК или "Отмена", PSM_GETCURRENTPAGEHWND возвращает NULL. Затем можно использовать функцию DestroyWindow для уничтожения диалогового окна.
Версия 5.80. Возвращаемое значение PropertySheet содержит различные сведения для модальных и немодальных листов свойств. В некоторых случаях безрежимные таблицы свойств могут потребовать сведения, полученные от PropertySheet, если они были модальными. В частности, им может потребоваться знать, были ли возвращены ID_PSREBOOTSYSTEM или ID_PSRESTARTWINDOWS. Лист свойств без режима может получить значение, полученное модальным листом свойств из PropertySheet, ожидая, пока PSM_GETCURRENTPAGEHWND не возвращает NULL, а затем отправляет сообщение PSM_GETRESULT.
Заметка
Заголовок prsht.h определяет PropertySheet как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows Vista [только классические приложения] |
минимальный поддерживаемый сервер | Windows Server 2003 [только классические приложения] |
целевая платформа | Виндоус |
заголовка | prsht.h |
библиотеки |
Comctl32.lib |
DLL | Comctl32.dll |
набор API | ext-ms-win-shell-comctl32-window-l1-1-0 (представлено в Windows 10 версии 10.0.14393) |