Struttura PAGESETUPDLGW (commdlg.h)
Contiene informazioni usate dalla funzione PageSetupDlg per inizializzare la finestra di dialogo Imposta pagina . Dopo aver chiuso la finestra di dialogo, il sistema restituisce informazioni sui parametri di pagina definiti dall'utente in questa struttura.
Sintassi
typedef struct tagPSDW {
DWORD lStructSize;
HWND hwndOwner;
HGLOBAL hDevMode;
HGLOBAL hDevNames;
DWORD Flags;
POINT ptPaperSize;
RECT rtMinMargin;
RECT rtMargin;
HINSTANCE hInstance;
LPARAM lCustData;
LPPAGESETUPHOOK lpfnPageSetupHook;
LPPAGEPAINTHOOK lpfnPagePaintHook;
LPCWSTR lpPageSetupTemplateName;
HGLOBAL hPageSetupTemplate;
} PAGESETUPDLGW, *LPPAGESETUPDLGW;
Members
lStructSize
Tipo: DWORD
Dimensione, in byte, della struttura.
hwndOwner
Tipo: HWND
Handle nella finestra che possiede la finestra di dialogo. Questo membro può essere qualsiasi handle di finestra valido oppure può essere NULL se la finestra di dialogo non ha alcun proprietario.
hDevMode
Tipo: HGLOBAL
Handle a un oggetto di memoria globale contenente una struttura DEVMODE . Se viene specificato un handle, i valori nella struttura DEVMODE corrispondente vengono usati per inizializzare i controlli nella finestra di dialogo. In output, la finestra di dialogo imposta hDevMode su un handle di memoria globale su una struttura DEVMODE che contiene valori che specificano le selezioni dell'utente. Se le selezioni dell'utente non sono disponibili, la finestra di dialogo imposta hDevMode su NULL.
hDevNames
Tipo: HGLOBAL
Handle a un oggetto di memoria globale che contiene una struttura DEVNAMES . Questa struttura contiene tre stringhe che specificano il nome del driver, il nome della stampante e il nome della porta di output. In input, se viene specificato un handle, le stringhe nella struttura DEVNAMES corrispondente vengono usate per inizializzare i controlli nella finestra di dialogo. In output, la finestra di dialogo imposta hDevNames su un handle di memoria globale su una struttura DEVNAMES che contiene stringhe che specificano le selezioni dell'utente. Se le selezioni dell'utente non sono disponibili, la finestra di dialogo imposta hDevNames su NULL.
Flags
Tipo: DWORD
Set di flag di bit che è possibile usare per inizializzare la finestra di dialogo Imposta pagina . Quando la finestra di dialogo restituisce, imposta questi flag per indicare l'input dell'utente. Questo membro può essere uno o più dei valori seguenti.
Valore | Significato |
---|---|
|
Imposta i valori minimi che l'utente può specificare per i margini della pagina in modo che siano i margini minimi consentiti dalla stampante. Questo è il valore predefinito. Questo flag viene ignorato se vengono specificati anche i flag PSD_MARGINS e PSD_MINMARGINS . |
|
Disabilita i controlli del margine, impedendo all'utente di impostare i margini. |
|
Disabilita i controlli di orientamento, impedendo all'utente di impostare l'orientamento della pagina. |
|
Impedisce alla finestra di dialogo di disegnare il contenuto della pagina di esempio. Se si abilita una procedura di hook PagePaintHook , è comunque possibile disegnare il contenuto della pagina di esempio. |
|
Disabilita i controlli di carta, impedendo all'utente di impostare parametri di pagina, ad esempio le dimensioni della carta e l'origine. |
|
Obsoleta.
Windows XP/2000: Disabilita il pulsante Stampante , impedendo all'utente di richiamare una finestra di dialogo contenente informazioni aggiuntive sulla configurazione della stampante. |
|
Abilita la procedura di hook specificata nel membro lpfnPagePaintHook . |
|
Abilita la procedura di hook specificata nel membro lpfnPageSetupHook . |
|
Indica che i membri hInstance e lpPageSetupTemplateName specificano un modello di finestra di dialogo da usare al posto del modello predefinito. |
|
Indica che il membro hPageSetupTemplate identifica un blocco di dati contenente un modello di finestra di dialogo precaricati. Il sistema ignora il membro lpPageSetupTemplateName se viene specificato questo flag. |
|
Indica che i centesimi di millimetri sono l'unità di misura per i margini e le dimensioni della carta. I valori nei membri rtMargin, rtMinMargin e ptPaperSize sono in centesimi di millimetri. È possibile impostare questo flag sull'input per eseguire l'override dell'unità predefinita di misura per le impostazioni locali dell'utente. Quando la funzione restituisce, la finestra di dialogo imposta questo flag per indicare le unità usate. |
|
Indica che migliaia di pollici sono l'unità di misura per i margini e le dimensioni della carta. I valori nei membri rtMargin, rtMinMargin e ptPaperSize sono in migliaia di pollici. È possibile impostare questo flag sull'input per eseguire l'override dell'unità predefinita di misura per le impostazioni locali dell'utente. Quando la funzione restituisce, la finestra di dialogo imposta questo flag per indicare le unità usate. |
|
Riservato. |
|
Causa l'uso dei valori specificati nel membro rtMargin come larghezza iniziale per i margini sinistro, superiore, destro e inferiore. Se PSD_MARGINS non è impostato, il sistema imposta le larghezze iniziali su un pollice per tutti i margini. |
|
Causa l'uso dei valori specificati nel membro rtMinMargin come larghezza minima consentita per i margini sinistro, superiore, destro e inferiore. Il sistema impedisce all'utente di immettere una larghezza minore del minimo specificato. Se PSD_MINMARGINS non è specificato, il sistema imposta le larghezze minime consentite a quelle consentite dalla stampante. |
|
Nasconde e disabilita il pulsante Rete . |
|
Impedisce al sistema di visualizzare un messaggio di avviso quando non è presente alcuna stampante predefinita. |
|
PageSetupDlg non visualizza la finestra di dialogo. Imposta invece i membri hDevNames e hDevMode su handle per le strutture DEVMODE e DEVNAMES inizializzate per la stampante predefinita del sistema. PageSetupDlg restituisce un errore se hDevNames o hDevMode non è NULL. |
|
Fa sì che la finestra di dialogo visualizzi il pulsante ? . Il membro hwndOwner deve specificare la finestra per ricevere i messaggi registrati HELPMSGSTRING inviati dalla finestra di dialogo quando l'utente fa clic sul pulsante ? . |
ptPaperSize
Tipo: POINT
Dimensioni della carta selezionata dall'utente. Il flag PSD_INTHOUSANDTHSOFINCHES o PSD_INHUNDREDTHSOFMILLIMETERS indica le unità di misura.
rtMinMargin
Tipo: RECT
Larghezza minima consentita per i margini sinistro, superiore, destro e inferiore. Il sistema ignora questo membro se il flag PSD_MINMARGINS non è impostato. Questi valori devono essere minori o uguali ai valori specificati nel membro rtMargin . Il flag PSD_INTHOUSANDTHSOFINCHES o PSD_INHUNDREDTHSOFMILLIMETERS indica le unità di misura.
rtMargin
Tipo: RECT
Larghezze dei margini sinistro, superiore, destro e inferiore. Se si imposta il flag PSD_MARGINS , rtMargin specifica i valori del margine iniziale. Quando PageSetupDlg restituisce, rtMargin contiene le larghezze del margine selezionate dall'utente. Il flag PSD_INHUNDREDTHSOFMILLIMETERS o PSD_INTHOUSANDTHSOFINCHES indica le unità di misura.
hInstance
Tipo: HINSTANCE
Se il flag PSD_ENABLEPAGESETUPTEMPLATE è impostato nel membro Flags , hInstance è un handle per l'applicazione o l'istanza del modulo che contiene il modello di finestra di dialogo denominato dal membro lpPageSetupTemplateName .
lCustData
Tipo: LPARAM
Dati definiti dall'applicazione che il sistema passa alla routine hook identificata dal membro lpfnPageSetupHook . Quando il sistema invia il messaggio WM_INITDIALOG alla routine hook, il parametro lParam del messaggio è un puntatore alla struttura PAGESETUPDLG specificata al momento della creazione del dialogo. La procedura hook può usare questo puntatore per ottenere il valore lCustData .
lpfnPageSetupHook
Tipo: LPPAGESETUPHOOK
Puntatore a una routine hook PageSetupHook in grado di elaborare i messaggi destinati alla finestra di dialogo. Questo membro viene ignorato a meno che il flag PSD_ENABLEPAGESETUPHOOK non sia impostato nel membro Flags .
lpfnPagePaintHook
Tipo: LPPAGEPAINTHOOK
Puntatore a una routine hook PagePaintHook che riceve messaggi WM_PSD_* dalla finestra di dialogo ogni volta che la pagina di esempio viene ridisegnata. Elaborando i messaggi, la procedura hook può personalizzare l'aspetto della pagina di esempio. Questo membro viene ignorato a meno che il flag PSD_ENABLEPAGEPAINTHOOK non sia impostato nel membro Flags .
lpPageSetupTemplateName
Tipo: LPCTSTR
Nome della risorsa modello della finestra di dialogo nel modulo identificato dal membro hInstance . Questo modello viene sostituito con il modello della finestra di dialogo standard. Per le risorse della finestra di dialogo numerate, lpPageSetupTemplateName può essere un valore restituito dalla macro MAKEINTRESOURCE . Questo membro viene ignorato a meno che il flag PSD_ENABLEPAGESETUPTEMPLATE non sia impostato nel membro Flags .
hPageSetupTemplate
Tipo: HGLOBAL
Se il flag PSD_ENABLEPAGESETUPTEMPLATEHANDLE è impostato nel membro Flags , hPageSetupTemplate è un handle per un oggetto memoria contenente un modello di finestra di dialogo.
Commenti
Se i flag PSD_INHUNDREDTHSOFMILLIMETERS e PSD_INTHOUSANDTHSOFINCHES non vengono specificati, il sistema esegue una query sul valore LOCALE_IMEASURE delle impostazioni locali utente predefinite per determinare l'unità di misura (centesimi di millimetri o millesimi di pollici) per la larghezza del margine e le dimensioni della carta.
Se sia hDevNames che hDevMode hanno handle validi e il nome della stampante specificato dal membro wDeviceOffset della struttura DEVNAMES non corrisponde al nome specificato dal membro dmDeviceName della struttura DEVMODE , il sistema usa il nome specificato da wDeviceOffset per impostazione predefinita.
Nota
L'intestazione commdlg.h definisce PAGESETUPDLG 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 che non è indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzioni.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 2000 Professional [solo app desktop] |
Server minimo supportato | Windows 2000 Server [solo app desktop] |
Intestazione | commdlg.h (include Windows.h) |
Vedi anche
Libreria delle finestre di dialogo comuni
Informazioni concettuali
Altre risorse
Riferimento