The PropertySheet function creates a property sheet and adds the pages defined in the specified property sheet header structure.
int PropertySheet(
LPCPROPSHEETHEADER lppsph | |
); |
Returns a positive value if successful or - 1 otherwise.
If the dwFlags member of the PROPSHEETHEADER structure specifies the PSH_MODELESS flag, the successful return value is the window handle of the property sheet dialog.
The following return values have a special meaning:
Value |
Meaning |
ID_PSREBOOTSYSTEM |
A page sent the PSM_REBOOTSYSTEM message to the property sheet. The computer must be restarted for the user’s changes to take effect. |
ID_PSRESTARTWINDOWS |
A page sent the PSM_RESTARTWINDOWS message to the property sheet. Windows must be restarted for the user’s changes to take effect. |
To get extended error information, call GetLastError.
By default, PropertySheet creates a modal dialog. If the dwFlags member of the PROPSHEETHEADER structure specifies the PSH_MODELESS flag, PropertySheet creates a modeless dialog and returns immediately after the dialog is created. In this case, the PropertySheet return value is the window handle of the modeless dialog.
For a modeless property sheet, your message loop should use PSM_ISDIALOGMESSAGE to pass messages to the property sheet dialog. Your message loop should use PSM_GETCURRENTPAGEHWND to determine when to destroy the dialog. When the user selects the OK or Cancel button, PSM_GETCURRENTPAGEHWND returns NULL, and you can then use the DestroyWindow function to destroy the dialog.
DestroyWindow, PROPSHEETHEADER, PSM_GETCURRENTPAGEHWND, PSM_ISDIALOGMESSAGE, PSM_REBOOTSYSTEM, PSM_RESTARTWINDOWS