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


макрос PropSheet_InsertPage (prsht.h)

Вставляет новую страницу в существующий лист свойств. Страницу можно вставить либо по указанному индексу, либо после указанной страницы. Этот макрос можно использовать или явно отправить сообщение PSM_INSERTPAGE.

Синтаксис

BOOL PropSheet_InsertPage(
   HWND hDlg,
   HWND index,
   HWND hpage
);

Параметры

hDlg

Тип: HWND

Дескриптор на лист свойств.

index

Тип: HWND

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

Ценность Значение
индекса
Если индекс меньше MAXUSHORT (наибольшее короткое целое число без знака), он задает индекс на основе нуля для новой страницы. Например, чтобы сделать вставленную страницу третьей страницей на листе свойств, задайте для индекс значение 2. Чтобы сделать ее первой страницей, задайте для индекс значение 0. Если индекс имеет значение больше количества страниц и меньше MAXUSHORT, страница будет добавлена.
hpageInsertAfter
Если индекс в дескриптор HPROPSHEETPAGE существующей страницы, новая страница будет вставлена после нее.

hpage

Тип: HWND

Дескриптор для вставки страницы. Сначала страницу необходимо создать с помощью вызова функции CreatePropertySheetPage.

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

Тип: BOOL

Возвращает ненулевое значение, если страница была успешно вставлена или ноль в противном случае.

Замечания

Страницы после точки вставки перемещаются вправо, чтобы разместить новую страницу.

Лист свойств не изменяется, чтобы соответствовать новой странице. Не делайте новую страницу больше, чем самая большая страница листа свойств.

Во время управления списком страниц выполняется ряд сообщений и один вызов функции. Хотя это действие происходит, попытка изменить список страниц будет иметь непредсказуемые результаты. Соответственно, не следует использовать макрос PropSheet_InsertPage в реализации PropSheetPageProc или при обработке следующих уведомлений и сообщений Windows.

Если необходимо изменить страницу листа свойств во время обработки одного из этих сообщений или во время PropSheetPageProc работает, опубликуйте личное сообщение Windows. Приложение не получит это сообщение до тех пор, пока диспетчер листов свойств завершит свои задачи. Затем можно изменить список страниц.

Следующие уведомления также влияют на изменение листа свойств.

Вы можете добавлять или удалять страницы в ответ на эти уведомления, если вы возвращаете (через DWL_MSGRESULT) ненулевое значение, чтобы указать нужную новую страницу. Обратите внимание, что если вы вставляете страницу, расположенную до текущей страницы (которая имеет меньший индекс, чем текущая страница), PSN_KILLACTIVE может быть отправлена на неправильную страницу.
Примечание Этот макрос не поддерживается при использовании стиля мастера Аэро (PSH_AEROWIZARD).
 

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows Vista [только классические приложения]
минимальный поддерживаемый сервер Windows Server 2003 [только классические приложения]
целевая платформа Виндоус
заголовка prsht.h