Condividi tramite


Funzione PropertySheetA (prsht.h)

Crea una finestra delle proprietà e aggiunge le pagine definite nella struttura di intestazione della finestra delle proprietà specificata.

Sintassi

INT_PTR PropertySheetA(
  LPCPROPSHEETHEADERA unnamedParam1
);

Parametri

unnamedParam1

Tipo: LPCPROPSHEETHEADER

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

Valore restituito

Tipo: INT_PTR

Per le finestre delle proprietà modali, il valore restituito è il seguente:

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

Per le finestre delle proprietà senza modalità, il valore restituito è l'handle della finestra della finestra delle proprietà.

I valori restituiti seguenti hanno un significato speciale.

Codice restituito Descrizione
ID_PSREBOOTSYSTEM
Una pagina ha inviato il messaggio di PSM_REBOOTSYSTEM alla finestra delle proprietà. Per rendere effettive le modifiche dell'utente, è necessario riavviare il computer.
ID_PSRESTARTWINDOWS
Una pagina ha inviato il messaggio di PSM_RESTARTWINDOWS alla finestra delle proprietà. Windows deve essere riavviato per rendere effettive le modifiche dell'utente.

Osservazioni

Per recuperare informazioni sull'errore estese, chiamare GetLastError.

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

Nota Le note seguenti fanno riferimento solo alle procedure guidate che non usano lo stile della procedura guidata Aero (PSH_AEROWIZARD) o alle finestre delle proprietà non guidate.
 
Per impostazione predefinita, la funzione PropertySheet crea una finestra di dialogo modale. Se il dwFlags membro 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 PropertySheet valore restituito è l'handle di 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 della finestra di dialogo delle proprietà. Il ciclo di messaggi deve usare PSM_GETCURRENTPAGEHWND per determinare quando eliminare definitivamente 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 definitivamente la finestra di dialogo.

Versione 5.80. Il valore restituito PropertySheet contiene informazioni diverse per le finestre delle proprietà modali e non modali. In alcuni casi, le finestre delle proprietà modeless potrebbero richiedere le informazioni che avrebbero ricevuto da PropertySheet se fossero stati modali. In particolare, potrebbe essere necessario sapere se ID_PSREBOOTSYSTEM o ID_PSRESTARTWINDOWS sarebbe stato restituito. Una finestra delle proprietà modeless può recuperare il valore ricevuto da una finestra delle proprietà modale da PropertySheet attendendo che PSM_GETCURRENTPAGEHWND restituisca NULL e quindi invii 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 del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice non indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere convenzioni di per i prototipi di funzioni.

Fabbisogno

Requisito Valore
client minimo supportato Windows Vista [solo app desktop]
server minimo supportato Windows Server 2003 [solo app desktop]
piattaforma di destinazione Finestre
intestazione prsht.h
libreria Comctl32.lib
dll Comctl32.dll
set di API ext-ms-win-shell-comctl32-window-l1-1-0 (introdotto in Windows 10, versione 10.0.14393)