QFontDialog Class
Die Klasse „QFontDialog“ stellt ein Dialog-Widget zur Auswahl einer Schriftart bereit. Mehr...
| Kopfzeile: | #include <QFontDialog> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Widgets) target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
| qmake: | QT += widgets |
| Erbt von: | QDialog |
- Liste aller Mitglieder, einschließlich geerbter Mitglieder
- QFontDialog ist Teil von Standarddialogen.
Öffentliche Typen
| enum | FontDialogOption { NoButtons, DontUseNativeDialog, ScalableFonts, NonScalableFonts, MonospacedFonts, ProportionalFonts } |
| flags | FontDialogOptions |
Eigenschaften
- currentFont : QFont
- options : FontDialogOptions
Öffentliche Funktionen
| QFontDialog(QWidget *parent = nullptr) | |
| QFontDialog(const QFont &initial, QWidget *parent = nullptr) | |
| QFont | currentFont() const |
| void | open(QObject *receiver, const char *member) |
| QFontDialog::FontDialogOptions | options() const |
| QFont | selectedFont() const |
| void | setCurrentFont(const QFont &font) |
| void | setOption(QFontDialog::FontDialogOption option, bool on = true) |
| void | setOptions(QFontDialog::FontDialogOptions options) |
| bool | testOption(QFontDialog::FontDialogOption option) const |
Neu implementierte öffentliche Funktionen
| virtual void | setVisible(bool visible) override |
Signale
| void | currentFontChanged(const QFont &font) |
| void | fontSelected(const QFont &font) |
Statische öffentliche Mitglieder
| QFont | getFont(bool *ok, const QFont &initial, QWidget *parent = nullptr, const QString &title = QString(), QFontDialog::FontDialogOptions options = FontDialogOptions()) |
| QFont | getFont(bool *ok, QWidget *parent = nullptr) |
Neu implementierte geschützte Funktionen
| virtual void | changeEvent(QEvent *e) override |
| virtual void | done(int result) override |
Ausführliche Beschreibung
Ein Schriftartendialog wird über eine der statischen Funktionen „ getFont()“ erstellt.
Beispiele:
bool ok;
QFont font = QFontDialog::getFont(
&ok, QFont("Helvetica [Cronyx]", 10), this);
if (ok) {
// the user clicked OK and font is set to the font the user selected
} else {
// the user canceled the dialog; font is set to the initial
// value, in this case Helvetica [Cronyx], 10
}Der Dialog kann auch verwendet werden, um die Schriftart eines Widgets direkt festzulegen:
myWidget.setFont(QFontDialog::getFont(0, myWidget.font()));Wenn der Benutzer auf „OK“ klickt, wird die ausgewählte Schriftart für „myWidget“ verwendet; wenn er auf „Abbrechen“ klickt, wird die ursprüngliche Schriftart beibehalten.

Siehe auch „ QFont“ , „ QFontInfo “, „ QFontMetrics “, „ QColorDialog “, „ QFileDialog “ und das Beispiel „Standarddialoge“.
Dokumentation zu Mitgliedstypen
enum QFontDialog::FontDialogOption
flags QFontDialog::FontDialogOptions
Diese Enumeration legt verschiedene Optionen fest, die das Erscheinungsbild eines Schriftartendialogs beeinflussen.
So lässt sich beispielsweise festlegen, welche Art von Schriftarten angezeigt werden soll. Wenn keine Angabe erfolgt, werden alle verfügbaren Schriftarten aufgelistet.
Beachten Sie, dass die Optionen zur Schriftartfilterung auf einigen Plattformen (z. B. Mac) möglicherweise nicht unterstützt werden. Sie werden jedoch immer vom nicht-nativen Dialogfeld unterstützt (das unter Windows oder Linux verwendet wird).
| Konstante | Wert | Beschreibung |
|---|---|---|
QFontDialog::NoButtons | 0x00000001 | Die Schaltflächen „ OK “ und „ Cancel “ werden nicht angezeigt. (Nützlich für „Live-Dialoge“.) |
QFontDialog::DontUseNativeDialog | 0x00000002 | Verwende auf dem Mac den Standard-Schriftartendialog von Qt anstelle des nativen Schriftartenfensters von Apple. |
QFontDialog::ScalableFonts | 0x00000004 | Skalierbare Schriftarten anzeigen |
QFontDialog::NonScalableFonts | 0x00000008 | Nicht skalierbare Schriftarten anzeigen |
QFontDialog::MonospacedFonts | 0x00000010 | Monospaced-Schriftarten anzeigen |
QFontDialog::ProportionalFonts | 0x00000020 | Proportionale Schriftarten anzeigen |
Der Typ `FontDialogOptions` ist ein `typedef` für ` QFlags<FontDialogOption>`. Er speichert eine OR-Kombination von `FontDialogOption`-Werten.
Siehe auch ` options`, ` setOption()` und ` testOption()`.
Dokumentation zur Eigenschaft
currentFont : QFont
Diese Eigenschaft enthält die aktuelle Schriftart des Dialogfelds.
Zugriffsfunktionen:
| QFont | currentFont() const |
| void | setCurrentFont(const QFont &font) |
Benachrichtigungssignal:
| void | currentFontChanged(const QFont &font) |
options : FontDialogOptions
Diese Eigenschaft enthält die verschiedenen Optionen, die das Erscheinungsbild des Dialogfelds beeinflussen
Standardmäßig sind alle Optionen deaktiviert.
Die Optionen sollten vor dem Anzeigen des Dialogfelds festgelegt werden. Es ist nicht garantiert, dass sich das Festlegen der Optionen bei sichtbarem Dialogfeld sofort auf das Dialogfeld auswirkt (abhängig von der Option und der Plattform).
Zugriffsfunktionen:
| QFontDialog::FontDialogOptions | options() const |
| void | setOptions(QFontDialog::FontDialogOptions options) |
Siehe auch „ setOption()“ und „ testOption()“.
Dokumentation der Member-Funktionen
[explicit] QFontDialog::QFontDialog(QWidget *parent = nullptr)
Erstellt einen Standard-Schriftartendialog.
Verwenden Sie ` setCurrentFont()` zum Festlegen der anfänglichen Schriftartattribute.
Der Parameter „ parent “ wird an den Konstruktor „ QDialog “ übergeben.
Siehe auch ` getFont()`.
[explicit] QFontDialog::QFontDialog(const QFont &initial, QWidget *parent = nullptr)
Erzeugt einen Standard-Schriftartendialog mit dem angegebenen „ parent “ und der angegebenen Schriftart „ initial “.
[override virtual protected] void QFontDialog::changeEvent(QEvent *e)
Umsetzt: ` QWidget::changeEvent(QEvent *event)`.
QFont QFontDialog::currentFont() const
Gibt die aktuelle Schriftart zurück.
Hinweis: Getter- Funktion für die Eigenschaft `currentFont`.
Siehe auch „ setCurrentFont()“ und „ selectedFont()“.
[signal] void QFontDialog::currentFontChanged(const QFont &font)
Dieses Signal wird ausgelöst, wenn die aktuelle Schriftart geändert wird. Die neue Schriftart wird in „ font “ angegeben.
Das Signal wird ausgegeben, während ein Benutzer eine Schriftart auswählt. Letztendlich kann die gewählte Schriftart von der aktuell ausgewählten Schriftart abweichen.
Hinweis: Notifier -Signal für die Eigenschaft „ currentFont “.
Siehe auch „ currentFont“ , „ fontSelected()“ und „ selectedFont()“.
[override virtual protected] void QFontDialog::done(int result)
Implementiert: ` QDialog::done(int r)`.
Schließt das Dialogfeld und setzt dessen Ergebniscode auf „ result “. Wenn dieses Dialogfeld mit „ exec()“ angezeigt wird, bewirkt „done()“, dass die lokale Ereignisschleife beendet wird, und „ exec()“ gibt „ result “ zurück.
Siehe auch „ QDialog::done()“.
[signal] void QFontDialog::fontSelected(const QFont &font)
Dieses Signal wird ausgelöst, wenn eine Schriftart ausgewählt wurde. Die ausgewählte Schriftart wird in „ font “ angegeben.
Das Signal wird nur ausgesendet, wenn ein Benutzer die endgültig zu verwendende Schriftart ausgewählt hat. Es wird nicht ausgesendet, während der Benutzer die aktuelle Schriftart im Schriftartendialog ändert.
Siehe auch „ selectedFont()“, „ currentFontChanged()“ und „ currentFont “.
[static] QFont QFontDialog::getFont(bool *ok, const QFont &initial, QWidget *parent = nullptr, const QString &title = QString(), QFontDialog::FontDialogOptions options = FontDialogOptions())
Ruft einen modalen Schriftartendialog auf und gibt eine Schriftart zurück.
Wenn der Benutzer auf „ OK “ klickt, wird die ausgewählte Schriftart zurückgegeben. Wenn der Benutzer auf „ Cancel “ klickt, wird die Schriftart „ initial “ zurückgegeben.
Der Dialog wird mit dem angegebenen „ parent “ und den in „ options “ festgelegten Optionen erstellt. „ title “ wird als Fenstertitel des Dialogs angezeigt und „ initial “ ist die anfänglich ausgewählte Schriftart. Ist der Parameter „ ok “ nicht null, wird der Wert, auf den er verweist, auf „true“ gesetzt, wenn der Benutzer auf „ OK “ klickt, und auf „false“, wenn der Benutzer auf „ Cancel “ klickt.
Beispiele:
bool ok;
QFont font = QFontDialog::getFont(&ok, QFont("Times", 12), this);
if (ok) {
// font is set to the font the user selected
} else {
// the user canceled the dialog; font is set to the initial
// value, in this case Times, 12.
}Der Dialog kann auch verwendet werden, um die Schriftart eines Widgets direkt festzulegen:
myWidget.setFont(QFontDialog::getFont(0, myWidget.font()));In diesem Beispiel wird die vom Benutzer gewählte Schriftart verwendet, wenn er auf „OK“ klickt; klickt er hingegen auf „Abbrechen“, wird die ursprüngliche Schriftart verwendet.
[static] QFont QFontDialog::getFont(bool *ok, QWidget *parent = nullptr)
Ruft einen modalen Schriftartendialog auf und gibt eine Schriftart zurück.
Wenn der Benutzer auf „ OK “ klickt, wird die ausgewählte Schriftart zurückgegeben. Wenn der Benutzer auf „ Cancel “ klickt, wird die Qt-Standardschriftart zurückgegeben.
Der Dialog wird mit dem angegebenen Parameter „ parent “ erstellt. Ist der Parameter „ ok “ nicht null, wird der Wert, auf den er verweist, auf „true“ gesetzt, wenn der Benutzer auf „ OK “ klickt, und auf „false“, wenn der Benutzer auf „ Cancel “ klickt.
Beispiel:
bool ok;
QFont font = QFontDialog::getFont(&ok, this);
if (ok) {
// font is set to the font the user selected
} else {
// the user canceled the dialog; font is set to the default
// application font, QApplication::font()
}Dies ist eine überladene Funktion.
void QFontDialog::open(QObject *receiver, const char *member)
Öffnet das Dialogfeld und verbindet dessen Signal „ fontSelected()“ mit dem durch „ receiver “ und „ member “ angegebenen Slot.
Das Signal wird vom Slot getrennt, sobald das Dialogfeld geschlossen wird.
QFont QFontDialog::selectedFont() const
Gibt die Schriftart zurück, die der Benutzer durch Klicken auf die Schaltfläche „ OK “ oder eine entsprechende Schaltfläche ausgewählt hat.
Hinweis: Diese Schriftart entspricht nicht immer der Schriftart, die in der Eigenschaft „ currentFont “ gespeichert ist, da der Benutzer verschiedene Schriftarten auswählen kann, bevor er sich endgültig für eine entscheidet.
void QFontDialog::setCurrentFont(const QFont &font)
Setzt die im Feld „ QFontDialog “ markierte Schriftart auf die angegebene „ font “.
Hinweis: Setter -Funktion für die Eigenschaft „ currentFont “.
Siehe auch „ currentFont()“ und „ selectedFont()“.
void QFontDialog::setOption(QFontDialog::FontDialogOption option, bool on = true)
Setzt die angegebene Eigenschaft „ option “ auf „enabled“, wenn „ on “ den Wert „true“ hat; andernfalls wird die angegebene Eigenschaft „ option “ zurückgesetzt.
Siehe auch „ options “ und „ testOption()“.
[override virtual] void QFontDialog::setVisible(bool visible)
Implementiert: ` QDialog::setVisible` (bool visible).
bool QFontDialog::testOption(QFontDialog::FontDialogOption option) const
Gibt „ true “ zurück, wenn die angegebene Funktion „ option “ aktiviert ist; andernfalls wird „false“ zurückgegeben.
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.