Freigeben über


CHOOSEFONTW-Struktur (commdlg.h)

Enthält Informationen, die die ChooseFont-Funktion zum Initialisieren des Dialogfelds Schriftart verwendet. Nachdem der Benutzer das Dialogfeld geschlossen hat, gibt das System Informationen zur Auswahl des Benutzers in dieser Struktur zurück.

Syntax

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;

Member

lStructSize

Art: DWORD

Die Länge der Struktur in Bytes.

hwndOwner

Typ: HWND

Ein Handle für das Fenster, das das Dialogfeld besitzt. Bei diesem Member kann es sich um ein beliebiges gültiges Fensterhandle handeln, oder es kann NULL sein, wenn das Dialogfeld keinen Besitzer hat.

hDC

Typ: HDC

Dieser Member wird von der ChooseFont-Funktion ignoriert.

Windows Vista und Windows XP/2000: Ein Handle für den Gerätekontext oder den Informationskontext des Druckers, dessen Schriftarten im Dialogfeld aufgeführt werden. Dieser Member wird nur verwendet, wenn das Flags-Element das CF_PRINTERFONTS- oder CF_BOTH-Flag angibt. Andernfalls wird dieser Member ignoriert.

lpLogFont

Typ: LPLOGFONT

Ein Zeiger auf eine LOGFONT-Struktur . Wenn Sie das CF_INITTOLOGFONTSTRUCT-Flag im Flags-Element festlegen und die anderen Member initialisieren, initialisiert die ChooseFont-Funktion das Dialogfeld mit einer Schriftart, die den LOGFONT-Membern entspricht. Wenn der Benutzer auf die Schaltfläche OKklickt, legt ChooseFont die Elemente der LOGFONT-Struktur basierend auf der Auswahl des Benutzers fest.

iPointSize

Typ: INT

Die Größe der ausgewählten Schriftart in Einheiten von 1/10 eines Punkts. Die ChooseFont-Funktion legt diesen Wert fest, nachdem der Benutzer das Dialogfeld geschlossen hat.

Flags

Art: DWORD

Eine Reihe von Bitflags, die Sie verwenden können, um das Dialogfeld Schriftart zu initialisieren. Wenn das Dialogfeld zurückgibt, werden diese Flags festgelegt, um die Benutzereingabe anzugeben. Bei diesem Member kann es sich um einen oder mehrere der folgenden Werte handeln.

Wert Bedeutung
CF_APPLY
0x00000200L
Bewirkt, dass im Dialogfeld die Schaltfläche Übernehmen angezeigt wird. Sie sollten eine Hookprozedur bereitstellen, um WM_COMMAND Nachrichten für die Schaltfläche Anwenden zu verarbeiten. Die Hookprozedur kann die WM_CHOOSEFONT_GETLOGFONT-Nachricht an das Dialogfeld senden, um die Adresse der Struktur abzurufen, die die aktuellen Markierungen für die Schriftart enthält.
CF_ANSIONLY
0x00000400L
Dieses Flag ist veraltet. Verwenden Sie CF_SCRIPTSONLY, um die Schriftartauswahl auf alle Skripts außer denen zu beschränken, die den OEM- oder Symbolzeichensatz verwenden. Um das ursprüngliche CF_ANSIONLY Verhalten abzurufen, verwenden Sie CF_SELECTSCRIPT , und geben Sie ANSI_CHARSET im lfCharSet-Member der LOGFONT-Struktur an, auf die lpLogFont verweist.
CF_BOTH
0x00000003
Dieses Flag wird für die Schriftartenumeration ignoriert.

Windows Vista und Windows XP/2000: Bewirkt, dass das Dialogfeld die verfügbaren Drucker- und Bildschirmschriftarten auflistet. Das hDC-Element ist ein Handle für den Gerätekontext oder den Informationskontext, der dem Drucker zugeordnet ist. Dieses Flag ist eine Kombination aus CF_SCREENFONTS undCF_PRINTERFONTS Flags.

CF_EFFECTS
0x00000100L
Bewirkt, dass im Dialogfeld die Steuerelemente angezeigt werden, die es dem Benutzer ermöglichen, Durchstreichungs-, Unterstrichen- und Textfarbenoptionen anzugeben. Wenn dieses Flag festgelegt ist, können Sie den rgbColors-Member verwenden, um die anfängliche Textfarbe anzugeben. Sie können die Elemente lfStrikeOut und lfUnderline der Struktur verwenden, auf die von lpLogFont verwiesen wird , um die Anfangseinstellungen der Kontrollkästchen "Strikeout" und "Unterstrichen" anzugeben. ChooseFont kann diese Member verwenden, um die Auswahl des Benutzers zurückzugeben.
CF_ENABLEHOOK
0x00000008L
Aktiviert die hook-Prozedur, die im lpfnHook-Element dieser Struktur angegeben ist.
CF_ENABLETEMPLATE
0x00000010L
Gibt an, dass die Elemente hInstance und lpTemplateName eine Dialogfeldvorlage angeben, die anstelle der Standardvorlage verwendet werden soll.
CF_ENABLETEMPLATEHANDLE
0x00000020L
Gibt an, dass das hInstance-Element einen Datenblock identifiziert, der eine vorab geladene Dialogfeldvorlage enthält. Das System ignoriert den lpTemplateName-Member , wenn dieses Flag angegeben ist.
CF_FIXEDPITCHONLY
0x00004000L

ChooseFont sollte nur Schriftarten mit fester Tonhöhe aufzählen und die Auswahl zulassen.

CF_FORCEFONTEXIST
0x00010000L

SelectFont sollte eine Fehlerbedingung angeben, wenn der Benutzer versucht, eine Schriftart oder Formatvorlage auszuwählen, die nicht im Dialogfeld aufgeführt ist.

CF_INACTIVEFONTS
0x02000000L

ChooseFont sollte zusätzlich Schriftarten anzeigen, die in Schriftarten Systemsteuerung auf Ausblenden festgelegt sind.

Windows Vista und Windows XP/2000: Dieses Flag wird erst unter Windows 7 unterstützt.

CF_INITTOLOGFONTSTRUCT
0x00000040L

ChooseFont sollte die Struktur verwenden, auf die der lpLogFont-Member verweist, um die Dialogfeldsteuerelemente zu initialisieren.

CF_LIMITSIZE
0x00002000L

ChooseFont sollte nur Schriftgrößen innerhalb des durch die Elemente nSizeMin und nSizeMax angegebenen Bereichs auswählen.

CF_NOOEMFONTS
0x00000800L
Identisch mit dem CF_NOVECTORFONTS-Flag .
CF_NOFACESEL
0x00080000L
Wenn Sie eine LOGFONT-Struktur zum Initialisieren der Dialogfeldsteuerelemente verwenden, verwenden Sie dieses Flag, um zu verhindern, dass das Dialogfeld eine anfängliche Auswahl für das Kombinationsfeld für den Schriftnamen anzeigt. Dies ist nützlich, wenn kein einzelner Schriftartname für die Textauswahl gilt.
CF_NOSCRIPTSEL
0x00800000L
Deaktiviert das Kombinationsfeld Skript . Wenn dieses Flag festgelegt ist, wird das lfCharSet-Element der LOGFONT-Struktur auf DEFAULT_CHARSET festgelegt, wenn ChooseFont zurückgegeben wird. Dieses Flag wird nur verwendet, um das Dialogfeld zu initialisieren.
CF_NOSIMULATIONS
0x000001000L

ChooseFont sollte keine Schriftartsimulationen anzeigen oder die Auswahl zulassen.

CF_NOSIZESEL
0x00200000L
Wenn Sie eine Struktur zum Initialisieren der Dialogfeldsteuerelemente verwenden, verwenden Sie dieses Flag, um zu verhindern, dass im Dialogfeld eine anfängliche Auswahl für das Kombinationsfeld Schriftgrad angezeigt wird. Dies ist nützlich, wenn kein einzelner Schriftgrad für die Textauswahl gilt.
CF_NOSTYLESEL
0x00100000L
Wenn Sie eine LOGFONT-Struktur zum Initialisieren der Dialogfeldsteuerelemente verwenden, verwenden Sie dieses Flag, um zu verhindern, dass das Dialogfeld eine anfängliche Auswahl für das Kombinationsfeld Schriftartformat anzeigt. Dies ist nützlich, wenn es keine einzelne Schriftart gibt, die für die Textauswahl gilt.
CF_NOVECTORFONTS
0x00000800L

ChooseFont sollte keine Auswahl von Vektorschriftarten zulassen.

CF_NOVERTFONTS
0x01000000L
Bewirkt, dass im Dialogfeld Schriftart nur horizontal orientierte Schriftarten aufgelistet werden.
CF_PRINTERFONTS
0x00000002
Dieses Flag wird für die Schriftartenumeration ignoriert.

Windows Vista und Windows XP/2000: Bewirkt, dass das Dialogfeld nur die Schriftarten auflistet, die vom Drucker unterstützt werden, der dem Vom hDC-Member identifizierten Gerätekontext oder Informationskontext zugeordnet ist. Außerdem wird die Bezeichnung der Schrifttypbeschreibung am unteren Rand des Dialogfelds Schriftart angezeigt.

CF_SCALABLEONLY
0x00020000L
Gibt an, dass ChooseFont nur die Auswahl skalierbarer Schriftarten zulassen soll. Skalierbare Schriftarten umfassen Vektorschriftarten, skalierbare Druckerschriftarten, TrueType-Schriftarten und von anderen Technologien skalierte Schriftarten.
CF_SCREENFONTS
0x00000001
Dieses Flag wird für die Schriftartenumeration ignoriert.

Windows Vista und Windows XP/2000: Bewirkt, dass das Dialogfeld nur die vom System unterstützten Bildschirmschriftarten auflistet.

CF_SCRIPTSONLY
0x00000400L

ChooseFont sollte die Auswahl von Schriftarten für alle Nicht-OEM- und Symbolzeichensätze sowie den ANSI-Zeichensatz ermöglichen. Dadurch wird der CF_ANSIONLY-Wert abgelöst.

CF_SELECTSCRIPT
0x00400000L
Bei Angabe in der Eingabe werden nur Schriftarten angezeigt, deren Zeichensatz im lfCharSet-Element der LOGFONT-Struktur angegeben ist. Der Benutzer ist nicht berechtigt, den im Kombinationsfeld Skripts angegebenen Zeichensatz zu ändern.
CF_SHOWHELP
0x00000004L
Bewirkt, dass im Dialogfeld die Schaltfläche Hilfe angezeigt wird. Das hwndOwner-Element muss das Fenster angeben, in dem die registrierten HELPMSGSTRING-Nachrichten empfangen werden, die das Dialogfeld sendet, wenn der Benutzer auf die Schaltfläche Hilfe klickt.
CF_TTONLY
0x00040000L

ChooseFont sollte nur aufzählen und die Auswahl von TrueType-Schriftarten zulassen.

CF_USESTYLE
0x00000080L
Das lpszStyle-Element ist ein Zeiger auf einen Puffer, der Formatvorlagendaten enthält, die ChooseFont zum Initialisieren des Kombinationsfelds Schriftartenformat verwenden sollte. Wenn der Benutzer das Dialogfeld schließt, kopiert ChooseFont Formatvorlagendaten für die Auswahl des Benutzers in diesen Puffer.
Hinweis Um Ihre Anwendung zu globalisieren, sollten Sie den Stil mithilfe der Elemente lfWeight und lfItalic der LOGFONT-Struktur angeben, auf die von lpLogFont verwiesen wird. Der Formatvorlagenname kann sich je nach Sprache der Systembenutzerschnittstelle ändern.
 
CF_WYSIWYG
0x00008000L
Veraltet. ChooseFont ignoriert dieses Flag.

Windows Vista und Windows XP/2000: ChooseFont sollte nur die Auswahl der Schriftarten zulassen, die sowohl auf dem Drucker als auch auf dem Display verfügbar sind. Wenn dieses Flag angegeben ist, sollten auch die CF_SCREENSHOTS - und CF_PRINTERFONTS- oder CF_BOTH-Flags angegeben werden.

rgbColors

Typ: COLORREF

Wenn das flag CF_EFFECTS festgelegt ist, gibt rgbColors die anfängliche Textfarbe an. Wenn ChooseFont erfolgreich zurückgegeben wird, enthält dieses Element den RGB-Wert der vom Benutzer ausgewählten Textfarbe. Verwenden Sie das RGB-Makro, um einen COLORREF-Farbwert zu erstellen.

lCustData

Typ: LPARAM

Anwendungsdefinierte Daten, die das System an die hook-Prozedur übergibt, die vom lpfnHook-Element identifiziert wird. Wenn das System die WM_INITDIALOG Nachricht an die Hookprozedur sendet, ist der lParam-Parameter der Nachricht ein Zeiger auf die CHOOSEFONT-Struktur , die beim Erstellen des Dialogfelds angegeben wurde. Die Hookprozedur kann diesen Zeiger verwenden, um den lCustData-Wert abzurufen.

lpfnHook

Typ: LPCFHOOKPROC

Ein Zeiger auf eine CFHookProc-Hookprozedur , die nachrichten verarbeiten kann, die für das Dialogfeld vorgesehen sind. Dieser Member wird ignoriert, es sei denn, das flag CF_ENABLEHOOK ist im Flags-Element festgelegt.

lpTemplateName

Typ: LPCTSTR

Der Name der Dialogfeldvorlagenressource in dem Modul, das vom hInstance-Element identifiziert wird. Diese Vorlage wird durch die Standarddialogfeldvorlage ersetzt. Für nummerierte Dialogfeldressourcen kann lpTemplateName ein Wert sein, der vom MAKEINTRESOURCE-Makro zurückgegeben wird. Dieser Member wird ignoriert, es sei denn, das CF_ENABLETEMPLATE-Flag ist im Flags-Element festgelegt.

hInstance

Typ: HINSTANCE

Wenn das flag CF_ENABLETEMPLATEHANDLE im Flags-Element festgelegt ist, ist hInstance ein Handle für ein Speicherobjekt, das eine Dialogfeldvorlage enthält. Wenn das CF_ENABLETEMPLATE-Flag festgelegt ist, ist hInstance ein Handle für ein Modul, das eine Dialogfeldvorlage mit dem Namen des lpTemplateName-Elements enthält. Wenn weder CF_ENABLETEMPLATEHANDLE noch CF_ENABLETEMPLATE festgelegt ist, wird dieser Member ignoriert.

lpszStyle

Typ: LPTSTR

Die Formatdaten. Wenn das flag CF_USESTYLE angegeben ist, verwendet ChooseFont die Daten in diesem Puffer, um das Kombinationsfeld Schriftformat zu initialisieren. Wenn der Benutzer das Dialogfeld schließt, kopiert ChooseFont die Zeichenfolge im Kombinationsfeld Schriftformat in diesen Puffer.

nFontType

Typ: WORD

Der Typ der ausgewählten Schriftart, wenn ChooseFont zurückgegeben wird . Bei diesem Member kann es sich um einen oder mehrere der folgenden Werte handeln.

Wert Bedeutung
BOLD_FONTTYPE
0x0100
Die Schriftstärke ist fett. Diese Informationen werden im lfWeight-Element der LOGFONT-Struktur dupliziert und entsprechen FW_BOLD.
ITALIC_FONTTYPE
0x0200
Das Attribut der kursiv geschriebenen Schriftart ist festgelegt. Diese Informationen werden im lfItalic-Element der LOGFONT-Struktur dupliziert.
PRINTER_FONTTYPE
0x4000
Die Schriftart ist eine Druckerschriftart.
REGULAR_FONTTYPE
0x0400
Die Schriftstärke ist normal. Diese Informationen werden im lfWeight-Element der LOGFONT-Struktur dupliziert und entsprechen FW_REGULAR.
SCREEN_FONTTYPE
0x2000
Die Schriftart ist eine Bildschirmschriftart.
SIMULATED_FONTTYPE
0x8000
Die Schriftart wird von der Grafikgeräteschnittstelle (Graphics Device Interface, GDI) simuliert.

___MISSING_ALIGNMENT__

nSizeMin

Typ: INT

Der kleinste Schriftgrad, den der Benutzer auswählen kann. ChooseFont erkennt diesen Member nur, wenn das flag CF_LIMITSIZE angegeben ist.

nSizeMax

Typ: INT

Der größte Schriftgrad, den der Benutzer auswählen kann. ChooseFont erkennt diesen Member nur, wenn das flag CF_LIMITSIZE angegeben ist.

Hinweise

Hinweis

Der commdlg.h-Header definiert CHOOSEFONT als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht Codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Kopfzeile commdlg.h

Weitere Informationen

ChooseFont

Allgemeine Dialogfeldbibliothek

Konzept

MAKEINTRESOURCE

Referenz