Condividi tramite


Funzione PropertySheetW (prsht.h)

Crea un foglio delle proprietà e aggiunge le pagine definite nella struttura di intestazione del foglio delle proprietà specificata.

Sintassi

INT_PTR PropertySheetW(
  LPCPROPSHEETHEADERW unnamedParam1
);

Parametri

unnamedParam1

Tipo: LPCPROPSHEETHEADER

Puntatore a una struttura PROPSHEETHEADER che definisce la cornice e le pagine di un foglio delle proprietà.

Valore restituito

Tipo: INT_PTR

Per i fogli delle proprietà modali, il valore restituito è il seguente:

>=1 Le modifiche sono state salvate dall'utente.
0 Nessuna modifica è stata salvata dall'utente.
-1 Si è verificato un errore.
 

Per i fogli delle proprietà senza modalità, il valore restituito è l'handle della finestra del foglio delle proprietà.

I valori restituiti seguenti hanno un significato speciale.

Codice restituito Descrizione
ID_PSREBOOTSYSTEM
Una pagina ha inviato il messaggio di PSM_REBOOTSYSTEM al foglio delle proprietà. Il computer deve essere riavviato per rendere effettive le modifiche dell'utente.
ID_PSRESTARTWINDOWS
Una pagina ha inviato il messaggio di PSM_RESTARTWINDOWS al foglio delle proprietà. Windows deve essere riavviato per rendere effettive le modifiche dell'utente.

Commenti

Per recuperare informazioni sull'errore estese, chiamare GetLastError.

Se si tenta di aggiungere più di 99 pagine a un foglio delle proprietà, questa funzione avrà esito negativo, ma senza alcuna indicazione della causa dell'errore: PropertySheet restituisce un valore pari a -1, ma GetLastError restituisce 0.

Nota Le osservazioni seguenti fanno riferimento solo alle procedure guidate che non usano lo stile della procedura guidata Aero (PSH_AEROWIZARD) o i fogli delle proprietà non della procedura guidata.
 
Per impostazione predefinita, la funzione PropertySheet crea una finestra di dialogo modale. Se il membro dwFlags della struttura PROPSHEETHEADER specifica il flag PSH_MODELESS, PropertySheet crea una finestra di dialogo senza modalità e restituisce immediatamente dopo la creazione. In questo caso, il valore restituito PropertySheet è l'handle della finestra nella finestra di dialogo senza modalità.

Per una finestra delle proprietà senza modalità, il ciclo di messaggi deve usare PSM_ISDIALOGMESSAGE per passare messaggi alla finestra di dialogo del foglio delle proprietà. Il ciclo di messaggi deve usare PSM_GETCURRENTPAGEHWND per determinare quando eliminare la finestra di dialogo. Quando l'utente fa clic sul pulsante OK o Annulla , PSM_GETCURRENTPAGEHWND restituisce NULL. È quindi possibile usare la funzione DestroyWindow per eliminare la finestra di dialogo.

Versione 5.80. Il valore restituito PropertySheet contiene informazioni diverse per fogli di proprietà modali e senza modalità. In alcuni casi, i fogli delle proprietà in modalitàless potrebbero richiedere le informazioni ricevute da PropertySheet se erano stati modali. In particolare, potrebbe essere necessario sapere se ID_PSREBOOTSYSTEM o ID_PSRESTARTWINDOWS sarebbero stati restituiti. Un foglio delle proprietà in modalitàless può recuperare il valore ricevuto da un foglio delle proprietà modale da PropertySheet aspettando fino a quando PSM_GETCURRENTPAGEHWND restituisce NULL e quindi invia un messaggio di PSM_GETRESULT .

Nota

L'intestazione prsht.h definisce PropertySheet come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante preprocessore UNICODE. La combinazione dell'utilizzo dell'alias di codifica neutrale con il codice che non è neutrale dalla codifica può causare errori di corrispondenza che causano errori di compilazione o runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzione.

Requisiti

   
Client minimo supportato Windows Vista [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione prsht.h
Libreria Comctl32.lib
DLL Comctl32.dll
Set di API ext-ms-win-shell-comctl32-window-l1-1-0 (introdotta in Windows 10, versione 10.0.14393)