Condividi tramite


Struttura CHOOSEFONTW (commdlg.h)

Contiene informazioni utilizzate dalla funzione ChooseFont per inizializzare la finestra di dialogo tipo di carattere . Dopo che l'utente chiude la finestra di dialogo, il sistema restituisce informazioni sulla selezione dell'utente in questa struttura.

Sintassi

typedef struct tagCHOOSEFONTW {
  DWORD        lStructSize;
  HWND         hwndOwner;
  HDC          hDC;
  LPLOGFONTW   lpLogFont;
  INT          iPointSize;
  DWORD        Flags;
  COLORREF     rgbColors;
  LPARAM       lCustData;
  LPCFHOOKPROC lpfnHook;
  LPCWSTR      lpTemplateName;
  HINSTANCE    hInstance;
  LPWSTR       lpszStyle;
  WORD         nFontType;
  WORD         ___MISSING_ALIGNMENT__;
  INT          nSizeMin;
  INT          nSizeMax;
} CHOOSEFONTW;

Membri

lStructSize

Tipo: DWORD

Lunghezza della struttura, espressa in byte.

hwndOwner

Tipo: HWND

Handle per la finestra proprietaria della finestra di dialogo. Questo membro può essere qualsiasi handle di finestra valido oppure può essere NULL se la finestra di dialogo non dispone di proprietario.

hDC

Tipo: HDC

Questo membro viene ignorato dalla funzione ChooseFont.

Windows Vista e Windows XP/2000: Handle per il contesto del dispositivo o il contesto informativo della stampante i cui tipi di carattere verranno elencati nella finestra di dialogo. Questo membro viene utilizzato solo se il membro flag specifica il flag CF_PRINTERFONTS o CF_BOTH; in caso contrario, questo membro viene ignorato.

lpLogFont

Tipo: LPLOGFONT

Puntatore a una struttura di LOGFONT. Se si imposta il flag di CF_INITTOLOGFONTSTRUCT nel membro flag e si inizializzano gli altri membri, la funzione ChooseFont inizializza la finestra di dialogo con un tipo di carattere corrispondente ai membri LOGFONT. Se l'utente fa clic sul pulsante OK, ChooseFont imposta i membri della struttura LOGFONT in base alle selezioni dell'utente.

iPointSize

Tipo: INT

Dimensione del tipo di carattere selezionato, in unità di 1/10 di un punto. La funzione ChooseFont imposta questo valore dopo che l'utente chiude la finestra di dialogo.

Flags

Tipo: DWORD

Set di flag di bit che è possibile utilizzare per inizializzare la finestra di dialogo tipo di carattere . Quando la finestra di dialogo viene restituita, imposta questi flag per indicare l'input dell'utente. Questo membro può essere uno o più dei valori seguenti.

Valore Significato
CF_APPLY
0x00000200L
Fa sì che la finestra di dialogo visualizzi il pulsante Applica . È necessario fornire una procedura hook per elaborare i messaggi WM_COMMAND per il pulsante Applica . La procedura hook può inviare il messaggio WM_CHOOSEFONT_GETLOGFONT alla finestra di dialogo per recuperare l'indirizzo della struttura che contiene le selezioni correnti per il tipo di carattere.
CF_ANSIONLY
0x00000400L
Questo flag è obsoleto. Per limitare le selezioni dei tipi di carattere a tutti gli script tranne quelli che usano i set di caratteri OEM o Symbol, usare CF_SCRIPTSONLY. Per ottenere il comportamento di CF_ANSIONLY originale, usare CF_SELECTSCRIPT e specificare ANSI_CHARSET nel membro lfCharSet della struttura LOGFONT a cui punta lpLogFont.
CF_BOTH
0x00000003
Questo flag viene ignorato per l'enumerazione dei tipi di carattere.

Windows Vista e Windows XP/2000: fa sì che la finestra di dialogo elenchi i tipi di carattere disponibili per stampanti e schermate. Il membro hDC è un handle per il contesto di dispositivo o il contesto informativo associato alla stampante. Questo flag è una combinazione dei flag CF_SCREENFONTS e CF_PRINTERFONTS.

CF_EFFECTS
0x00000100L
Fa sì che la finestra di dialogo visualizzi i controlli che consentono all'utente di specificare le opzioni di barratura, sottolineatura e colore del testo. Se questo flag è impostato, è possibile usare il rgbColors membro per specificare il colore del testo iniziale. È possibile utilizzare il lfStrikeOut e lfUnderline membri della struttura a cui punta lpLogFont per specificare le impostazioni iniziali delle caselle di controllo barrato e sottolineatura. ChooseFont può usare questi membri per restituire le selezioni dell'utente.
CF_ENABLEHOOK
0x00000008L
Abilita la procedura hook specificata nel lpfnHook membro di questa struttura.
CF_ENABLETEMPLATE
0x00000010L
Indica che hInstance e lpTemplateName membri specificano un modello di finestra di dialogo da usare al posto del modello predefinito.
CF_ENABLETEMPLATEHANDLE
0x00000020L
Indica che il membro hInstance identifica un blocco di dati contenente un modello di finestra di dialogo precaricata. Il sistema ignora il membro lpTemplateName se viene specificato questo flag.
CF_FIXEDPITCHONLY
0x00004000L

ChooseFont deve enumerare e consentire la selezione solo dei tipi di carattere a passo fisso.

CF_FORCEFONTEXIST
0x00010000L

ChooseFont deve indicare una condizione di errore se l'utente tenta di selezionare un tipo di carattere o uno stile non elencato nella finestra di dialogo.

CF_INACTIVEFONTS
0x02000000L

ChooseFont dovrebbero essere visualizzati anche i tipi di carattere impostati su Nascondi nel Pannello di controllo tipi di carattere.

Windows Vista e Windows XP/2000: Questo flag non è supportato fino a Windows 7.

CF_INITTOLOGFONTSTRUCT
0x00000040L

ChooseFont deve utilizzare la struttura a cui punta il membro lpLogFont per inizializzare i controlli della finestra di dialogo.

CF_LIMITSIZE
0x00002000L

ChooseFont deve selezionare solo le dimensioni del carattere all'interno dell'intervallo specificato dai membri nSizeMin e nSizeMax.

CF_NOOEMFONTS
0x00000800L
Uguale al flag di CF_NOVECTORFONTS.
CF_NOFACESEL
0x00080000L
Quando si utilizza una struttura LOGFONT per inizializzare i controlli della finestra di dialogo, utilizzare questo flag per impedire alla finestra di dialogo di visualizzare una selezione iniziale per la casella combinata nome carattere. Ciò è utile quando non è presente alcun nome di carattere singolo che si applica alla selezione del testo.
CF_NOSCRIPTSEL
0x00800000L
Disabilita la casella combinata Script. Quando questo flag è impostato, il membro lfCharSet della struttura LOGFONT viene impostato su DEFAULT_CHARSET quando viene restituito Choose Font. Questo flag viene utilizzato solo per inizializzare la finestra di dialogo.
CF_NOSIMULATIONS
0x00001000L

ChooseFont non deve visualizzare o consentire la selezione di simulazioni dei tipi di carattere.

CF_NOSIZESEL
0x00200000L
Quando si utilizza una struttura per inizializzare i controlli della finestra di dialogo, utilizzare questo flag per impedire alla finestra di dialogo di visualizzare una selezione iniziale per la casella combinata Dimensione carattere. Ciò è utile quando non vi sono dimensioni di carattere singole che si applicano alla selezione del testo.
CF_NOSTYLESEL
0x00100000L
Quando si utilizza una struttura LOGFONT per inizializzare i controlli della finestra di dialogo, utilizzare questo flag per impedire alla finestra di dialogo di visualizzare una selezione iniziale per la casella combinata stile carattere. Ciò è utile quando non esiste uno stile di carattere singolo che si applica alla selezione del testo.
CF_NOVECTORFONTS
0x00000800L

ChooseFont non deve consentire selezioni dei tipi di carattere vettoriali.

CF_NOVERTFONTS
0x01000000L
Fa sì che la finestra di dialogo font elenco solo tipi di carattere orientati orizzontalmente.
CF_PRINTERFONTS
0x00000002
Questo flag viene ignorato per l'enumerazione dei tipi di carattere.

Windows Vista e Windows XP/2000: fa sì che la finestra di dialogo elenchi solo i tipi di carattere supportati dalla stampante associata al contesto di dispositivo o al contesto informativo identificato dal membro hDC . Fa inoltre in modo che l'etichetta della descrizione del tipo di carattere venga visualizzata nella parte inferiore della finestra di dialogo tipo di carattere .

CF_SCALABLEONLY
0x00020000L
Specifica che ChooseFont deve consentire solo la selezione di tipi di carattere scalabili. I tipi di carattere scalabili includono tipi di carattere vettoriali, tipi di carattere della stampante scalabili, tipi di carattere TrueType e tipi di carattere ridimensionati da altre tecnologie.
CF_SCREENFONTS
0x00000001
Questo flag viene ignorato per l'enumerazione dei tipi di carattere.

Windows Vista e Windows XP/2000: fa sì che la finestra di dialogo elenchi solo i tipi di carattere dello schermo supportati dal sistema.

CF_SCRIPTSONLY
0x00000400L

ChooseFont deve consentire la selezione dei tipi di carattere per tutti i set di caratteri non OEM e Symbol, nonché per il set di caratteri ANSI. In questo modo viene sostituito il valore CF_ANSIONLY.

CF_SELECTSCRIPT
0x00400000L
Se specificato nell'input, vengono visualizzati solo i tipi di carattere con il set di caratteri identificato nel lfCharSet membro della struttura LOGFONT . L'utente non potrà modificare il set di caratteri specificato nella casella combinata Script.
CF_SHOWHELP
0x00000004L
Fa sì che la finestra di dialogo visualizzi il pulsante guida . Il membro hwndOwner deve specificare la finestra per ricevere il HELPMSGSTRING messaggi registrati inviati dalla finestra di dialogo quando l'utente fa clic sul pulsante Guida.
CF_TTONLY
0x00040000L

ChooseFont deve enumerare solo e consentire la selezione dei tipi di carattere TrueType.

CF_USESTYLE
0x00000080L
Il membro lpszStyle è un puntatore a un buffer che contiene dati di stile che ChooseFont deve usare per inizializzare la casella combinata stile carattere. Quando l'utente chiude la finestra di dialogo, ChooseFont copia i dati di stile per la selezione dell'utente in questo buffer.
Nota Per globalizzare l'applicazione, è necessario specificare lo stile utilizzando il lfWeight e lfItalic membri della struttura LOGFONT a cui punta lpLogFont. Il nome dello stile può cambiare a seconda della lingua dell'interfaccia utente di sistema.
 
CF_WYSIWYG
0x00008000L
Obsoleto. ChooseFont ignora questo flag.

Windows Vista e Windows XP/2000: ChooseFont deve consentire solo la selezione dei tipi di carattere disponibili sia sulla stampante che sullo schermo. Se si specifica questo flag, è necessario specificare anche i flag CF_SCREENSHOTS e CF_PRINTERFONTSo CF_BOTH.

rgbColors

Tipo: COLORREF

Se il flag CF_EFFECTS è impostato, rgbColors specifica il colore del testo iniziale. Quando ChooseFont viene restituito correttamente, questo membro contiene il valore RGB del colore del testo selezionato dall'utente. Per creare un valore di colore COLORREF, utilizzare la macro RGB .

lCustData

Tipo: LPARAM

Dati definiti dall'applicazione passati dal sistema alla routine hook identificata dal membro lpfnHook. Quando il sistema invia il messaggio di WM_INITDIALOG alla routine hook, il parametro lParam del messaggio è un puntatore alla struttura CHOOSEFONT specificata al momento della creazione del dialogo. La procedura hook può usare questo puntatore per ottenere il valore lCustData.

lpfnHook

Tipo: LPCFHOOKPROC

Puntatore a un CFHookProc routine hook in grado di elaborare i messaggi destinati alla finestra di dialogo. Questo membro viene ignorato a meno che il flag di CF_ENABLEHOOK non sia impostato nel membro flag .

lpTemplateName

Tipo: LPCTSTR

Nome della risorsa modello della finestra di dialogo nel modulo identificato dal membro hInstance. Questo modello viene sostituito dal modello della finestra di dialogo standard. Per le risorse della finestra di dialogo numerate, lpTemplateName può essere un valore restituito dalla macro MAKEINTRESOURCE. Questo membro viene ignorato a meno che il flag di CF_ENABLETEMPLATE non sia impostato nel membro flag di .

hInstance

Tipo: HINSTANCE

Se il flag CF_ENABLETEMPLATEHANDLE è impostato nel membro flag , hInstance è un handle per un oggetto memoria contenente un modello di finestra di dialogo. Se il flag CF_ENABLETEMPLATE è impostato, hInstance è un handle per un modulo che contiene un modello di finestra di dialogo denominato dal membro lpTemplateName. Se non vengono impostati né CF_ENABLETEMPLATEHANDLECF_ENABLETEMPLATE, questo membro viene ignorato.

lpszStyle

Tipo: LPTSTR

Dati di stile. Se viene specificato il flag CF_USESTYLE, ChooseFont utilizza i dati in questo buffer per inizializzare la casella combinata stile carattere. Quando l'utente chiude la finestra di dialogo, ChooseFont copia la stringa nella casella combinata stile carattere in questo buffer.

nFontType

Tipo: WORD

Tipo del tipo di carattere selezionato quando viene restituito ChooseFont. Questo membro può essere uno o più dei valori seguenti.

Valore Significato
BOLD_FONTTYPE
0x0100
Lo spessore del carattere è in grassetto. Queste informazioni vengono duplicate nel membro lfWeight della struttura LOGFONT ed equivale a FW_BOLD.
ITALIC_FONTTYPE
0x0200
L'attributo del tipo di carattere corsivo è impostato. Queste informazioni vengono duplicate nel membro lfItalic della struttura LOGFONT .
PRINTER_FONTTYPE
0x4000
Il tipo di carattere è un tipo di carattere della stampante.
REGULAR_FONTTYPE
0x0400
Lo spessore del carattere è normale. Queste informazioni vengono duplicate nel membro lfWeight della struttura LOGFONT ed è equivalente a FW_REGULAR.
SCREEN_FONTTYPE
0x2000
Il tipo di carattere è un tipo di carattere dello schermo.
SIMULATED_FONTTYPE
0x8000
Il tipo di carattere viene simulato dall'interfaccia GDI (Graphics Device Interface).

___MISSING_ALIGNMENT__

nSizeMin

Tipo: INT

Dimensioni minime del punto che un utente può selezionare. ChooseFont riconosce questo membro solo se è specificato il flag CF_LIMITSIZE.

nSizeMax

Tipo: INT

La dimensione massima del punto che un utente può selezionare. ChooseFont riconosce questo membro solo se è specificato il flag CF_LIMITSIZE.

Osservazioni

Nota

L'intestazione commdlg.h definisce CHOOSEFONT 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 2000 Professional [solo app desktop]
server minimo supportato Windows 2000 Server [solo app desktop]
intestazione commdlg.h

Vedere anche

ChooseFont

della libreria delle finestre di dialogo comuni

concettuale

MAKEINTRESOURCE

riferimento