CHOOSEFONTA-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 tagCHOOSEFONTA {
DWORD lStructSize;
HWND hwndOwner;
HDC hDC;
LPLOGFONTA lpLogFont;
INT iPointSize;
DWORD Flags;
COLORREF rgbColors;
LPARAM lCustData;
LPCFHOOKPROC lpfnHook;
LPCSTR lpTemplateName;
HINSTANCE hInstance;
LPSTR lpszStyle;
WORD nFontType;
WORD ___MISSING_ALIGNMENT__;
INT nSizeMin;
INT nSizeMax;
} CHOOSEFONTA;
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
Dieses Element wird von der ChooseFont-Funktion ignoriert.
Windows Vista und Windows XP/2000: Ein Handle für den Gerätekontext oder Informationskontext des Druckers, dessen Schriftarten im Dialogfeld aufgeführt werden. Dieses Element 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 Elemente 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, legt es diese Flags fest, um die Benutzereingabe anzugeben. Bei diesem Member kann es sich um einen oder mehrere der folgenden Werte handeln.
Wert | Bedeutung |
---|---|
|
Bewirkt, dass im Dialogfeld die Schaltfläche Anwenden 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 aktuelle Auswahl für die Schriftart enthält. |
|
Dieses Flag ist veraltet. Verwenden Sie CF_SCRIPTSONLY, um die Schriftartauswahl auf alle Skripts außer den Skripts 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-Element der LOGFONT-Struktur an, auf die von lpLogFont verwiesen wird. |
|
Dieses Flag wird für die Schriftartenaufzählung 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 informationskontext, der dem Drucker zugeordnet ist. Dieses Flag ist eine Kombination aus CF_SCREENFONTS und CF_PRINTERFONTS Flags. |
|
Bewirkt, dass das Dialogfeld die Steuerelemente anzeigt, die es dem Benutzer ermöglichen, Optionen für Streichen, Unterstrichen und Textfarbe anzugeben. Wenn dieses Flag festgelegt ist, können Sie das rgbColors-Element 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 Elemente verwenden, um die Auswahl des Benutzers zurückzugeben. |
|
Aktiviert die Hookprozedur, die im lpfnHook-Member dieser Struktur angegeben ist. |
|
Gibt an, dass die Mitglieder hInstance und lpTemplateName eine Dialogfeldvorlage angeben, die anstelle der Standardvorlage verwendet werden soll. |
|
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. |
|
ChooseFont sollte nur Schriftarten mit fester Tonhöhe aufzählen und die Auswahl zulassen. |
|
ChooseFont sollte eine Fehlerbedingung angeben, wenn der Benutzer versucht, eine Schriftart oder Formatvorlage auszuwählen, die nicht im Dialogfeld aufgeführt ist. |
|
ChooseFont sollte zusätzlich Schriftarten anzeigen, die auf In Schriftarten Systemsteuerung ausblenden festgelegt sind. Windows Vista und Windows XP/2000: Dieses Flag wird erst unter Windows 7 unterstützt. |
|
ChooseFont sollte die Struktur verwenden, auf die das lpLogFont-Element verweist, um die Dialogfeldsteuerelemente zu initialisieren. |
|
ChooseFont sollte nur Schriftgrößen innerhalb des von den nSizeMin- und nSizeMax-Elementen angegebenen Bereichs auswählen. |
|
Identisch mit dem CF_NOVECTORFONTS-Flag . |
|
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 Schriftartname anzeigt. Dies ist nützlich, wenn kein einzelner Schriftartname für die Textauswahl gilt. |
|
Deaktiviert das Kombinationsfeld Skript . Wenn dieses Flag festgelegt ist, wird das lfCharSet-Element der LOGFONT-Struktur auf DEFAULT_CHARSET festgelegt, wenn ChooseFont zurückgibt. Dieses Flag wird nur verwendet, um das Dialogfeld zu initialisieren. |
|
ChooseFont sollte keine Schriftartsimulationen anzeigen oder zulassen. |
|
Wenn Sie eine Struktur zum Initialisieren der Dialogfeldsteuerelemente verwenden, verwenden Sie dieses Flag, um zu verhindern, dass das Dialogfeld eine erste Auswahl für das Kombinationsfeld Schriftgrad anzeigt. Dies ist nützlich, wenn kein einzelner Schriftgrad für die Textauswahl gilt. |
|
Wenn Sie eine LOGFONT-Struktur zum Initialisieren der Dialogfeldsteuerelemente verwenden, verwenden Sie dieses Flag, um zu verhindern, dass das Dialogfeld eine erste Auswahl für das Kombinationsfeld Schriftartformat anzeigt. Dies ist nützlich, wenn es keine einzelne Schriftart gibt, die für die Textauswahl gilt. |
|
ChooseFont sollte keine Vektorschriftartenauswahl zulassen. |
|
Bewirkt, dass im Dialogfeld Schriftart nur horizontal orientierte Schriftarten aufgelistet werden. |
|
Dieses Flag wird für die Schriftartenaufzählung ignoriert.
Windows Vista und Windows XP/2000: Bewirkt, dass das Dialogfeld nur die Schriftarten auflistet, die vom Drucker unterstützt werden, die dem geräte- oder informationskontext zugeordnet sind, der vom hDC-Member identifiziert wird. Außerdem wird die Bezeichnung der Schrifttypbeschreibung am unteren Rand des Dialogfelds Schriftart angezeigt. |
|
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. |
|
Dieses Flag wird für die Schriftartenaufzählung ignoriert.
Windows Vista und Windows XP/2000: Bewirkt, dass das Dialogfeld nur die vom System unterstützten Bildschirmschriftarten auflistet. |
|
ChooseFont sollte die Auswahl von Schriftarten für alle Nicht-OEM- und Symbolzeichensätze sowie den ANSI-Zeichensatz zulassen. Dadurch wird der CF_ANSIONLY Wert ersetzt. |
|
Wenn sie für die Eingabe angegeben werden, werden nur Schriftarten angezeigt, deren Zeichensatz im lfCharSet-Element der LOGFONT-Struktur identifiziert ist. Der Benutzer darf den im Kombinationsfeld Skripts angegebenen Zeichensatz nicht ändern. |
|
Bewirkt, dass das Dialogfeld die Schaltfläche Hilfe anzeigt. 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. |
|
ChooseFont sollte nur die Auswahl von TrueType-Schriftarten auflisten und zulassen. |
|
Das lpszStyle-Element ist ein Zeiger auf einen Puffer, der Formatdaten enthält, die ChooseFont zum Initialisieren des Kombinationsfelds Schriftartformat verwenden sollte. Wenn der Benutzer das Dialogfeld schließt, kopiert ChooseFont Formatdaten 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 Formatname kann sich je nach Sprache der Systembenutzerschnittstelle ändern.
|
|
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 wird, sollten auch die CF_SCREENSHOTS - und CF_PRINTERFONTS- oder CF_BOTH-Flags angegeben werden. |
rgbColors
Typ: COLORREF
Wenn das CF_EFFECTS-Flag 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. Um einen COLORREF-Farbwert zu erstellen, verwenden Sie das RGB-Makro .
lCustData
Typ: LPARAM
Anwendungsdefinierte Daten, die das System an die Hookprozedur ü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 Wert lCustData abzurufen.
lpfnHook
Typ: LPCFHOOKPROC
Ein Zeiger auf eine CFHookProc-Hookprozedur , die nachrichten verarbeiten kann, die für das Dialogfeld vorgesehen sind. Dieses Element wird ignoriert, es sei denn, das CF_ENABLEHOOK-Flag ist im Flags-Element festgelegt.
lpTemplateName
Typ: LPCTSTR
Der Name der Dialogfeldvorlagenressource in dem Modul, das vom hInstance-Member 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. Dieses Element 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 flag CF_ENABLETEMPLATE festgelegt ist, ist hInstance ein Handle für ein Modul, das eine Dialogfeldvorlage mit dem Namen des lpTemplateName-Members enthält. Wenn weder CF_ENABLETEMPLATEHANDLE noch CF_ENABLETEMPLATE festgelegt ist, wird dieser Member ignoriert.
lpszStyle
Typ: LPTSTR
Die Formatdaten. Wenn das CF_USESTYLE-Flag 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 Schriftartformat in diesen Puffer.
nFontType
Typ: WORD
Der Typ der ausgewählten Schriftart, wenn ChooseFont zurückgibt. Bei diesem Member kann es sich um einen oder mehrere der folgenden Werte handeln.
Wert | Bedeutung |
---|---|
|
Die Schriftstärke ist fett. Diese Informationen werden im lfWeight-Member der LOGFONT-Struktur dupliziert und entsprechen FW_BOLD. |
|
Das Attribut der kursiv geschriebenen Schriftart ist festgelegt. Diese Informationen werden im lfItalic-Member der LOGFONT-Struktur dupliziert. |
|
Die Schriftart ist eine Druckerschriftart. |
|
Die Schriftstärke ist normal. Diese Informationen werden im lfWeight-Member der LOGFONT-Struktur dupliziert und entsprechen FW_REGULAR. |
|
Die Schriftart ist eine Bildschirmschriftart. |
|
Die Schriftart wird von der Grafikgeräteschnittstelle (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
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
Allgemeine Dialogfeldbibliothek
Konzept
Referenz