Sur cette page

QFontDialog Class

La classe QFontDialog fournit un widget de boîte de dialogue permettant de sélectionner une police. En savoir plus...

En-tête : #include <QFontDialog>
CMake : find_package(Qt6 REQUIRED COMPONENTS Widgets)
target_link_libraries(mytarget PRIVATE Qt6::Widgets)
qmake : QT += widgets
Hérite de : QDialog

Types publics

enum FontDialogOption { NoButtons, DontUseNativeDialog, ScalableFonts, NonScalableFonts, MonospacedFonts, ProportionalFonts }
flags FontDialogOptions

Propriétés

Fonctions publiques

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

Fonctions publiques réimplémentées

virtual void setVisible(bool visible) override

Signaux

void currentFontChanged(const QFont &font)
void fontSelected(const QFont &font)

Membres publics statiques

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)

Fonctions protégées réimplémentées

virtual void changeEvent(QEvent *e) override
virtual void done(int result) override

Description détaillée

Une boîte de dialogue de police est créée à l'aide de l'une des fonctions statiques getFont().

Exemples :

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
}

La boîte de dialogue peut également être utilisée pour définir directement la police d'un widget :

myWidget.setFont(QFontDialog::getFont(0, myWidget.font()));

Si l'utilisateur clique sur OK, la police qu'il a choisie sera utilisée pour myWidget, et s'il clique sur Annuler, la police d'origine sera conservée.

Une boîte de dialogue de police dans le style du widget Fusion.

Voir également QFont, QFontInfo, QFontMetrics, QColorDialog, QFileDialog et l’exemple « Boîtes de dialogue standard ».

Documentation sur les types de membres

enum QFontDialog::FontDialogOption
flags QFontDialog::FontDialogOptions

Cette énumération définit diverses options qui influent sur l'apparence d'une boîte de dialogue de polices.

Elle permet par exemple de préciser le type de police à afficher. Si aucune option n'est spécifiée, toutes les polices disponibles seront répertoriées.

Notez que les options de filtrage des polices peuvent ne pas être prises en charge sur certaines plateformes (par exemple, Mac). Elles sont toujours prises en charge par la boîte de dialogue non native (utilisée sous Windows ou Linux).

ConstanteValeurDescription
QFontDialog::NoButtons0x00000001Ne pas afficher les boutons « OK » et « Cancel ». (Utile pour les « boîtes de dialogue en temps réel ».)
QFontDialog::DontUseNativeDialog0x00000002Utiliser la boîte de dialogue de polices standard de Qt sur Mac à la place du panneau de polices natif d'Apple.
QFontDialog::ScalableFonts0x00000004Afficher les polices redimensionnables
QFontDialog::NonScalableFonts0x00000008Afficher les polices non redimensionnables
QFontDialog::MonospacedFonts0x00000010Afficher les polices à espacement fixe
QFontDialog::ProportionalFonts0x00000020Afficher les polices proportionnelles

Le type FontDialogOptions est un typedef pour QFlags<FontDialogOption>. Il stocke une combinaison OR de valeurs FontDialogOption.

Voir également options, setOption() et testOption().

Documentation sur les propriétés

currentFont : QFont

Cette propriété contient la police actuellement utilisée dans la boîte de dialogue.

Fonctions d'accès :

QFont currentFont() const
void setCurrentFont(const QFont &font)

Signal de notification :

void currentFontChanged(const QFont &font)

options : FontDialogOptions

Cette propriété regroupe les différentes options qui influent sur l'apparence et le comportement de la boîte de dialogue

Par défaut, toutes les options sont désactivées.

Les options doivent être définies avant l'affichage de la boîte de dialogue. Leur définition alors que la boîte de dialogue est visible ne garantit pas un effet immédiat sur celle-ci (selon l'option et la plateforme).

Fonctions d'accès :

QFontDialog::FontDialogOptions options() const
void setOptions(QFontDialog::FontDialogOptions options)

Voir également setOption() et testOption().

Documentation des fonctions membres

[explicit] QFontDialog::QFontDialog(QWidget *parent = nullptr)

Affiche une boîte de dialogue de police standard.

Utilisez la méthode setCurrentFont() pour définir les attributs initiaux de la police.

Le paramètre ` parent ` est transmis au constructeur ` QDialog `.

Voir également getFont().

[explicit] QFontDialog::QFontDialog(const QFont &initial, QWidget *parent = nullptr)

Affiche une boîte de dialogue de police standard avec l'parent ion fournie et la police initial spécifiée.

[override virtual protected] void QFontDialog::changeEvent(QEvent *e)

Réimplémente : QWidget::changeEvent(QEvent *event).

QFont QFontDialog::currentFont() const

Renvoie la police actuelle.

Remarque : fonctiongetter pour la propriété currentFont.

Voir également setCurrentFont() et selectedFont().

[signal] void QFontDialog::currentFontChanged(const QFont &font)

Ce signal est émis lorsque la police actuelle est modifiée. La nouvelle police est spécifiée dans ` font`.

Le signal est émis pendant qu'un utilisateur sélectionne une police. Il se peut que la police choisie diffère finalement de celle qui est actuellement sélectionnée.

Remarque : signalde notification pour la propriété currentFont.

Voir également currentFont, fontSelected() et selectedFont().

[override virtual protected] void QFontDialog::done(int result)

Réimplémente : QDialog::done(int r).

Ferme la boîte de dialogue et définit son code de résultat sur ` result`. Si cette boîte de dialogue est affichée à l'aide de ` exec()`, la fonction `done()` provoque la fin de la boucle d'événements locale et le retour de ` exec()` avec le code ` result`.

Voir également QDialog::done().

[signal] void QFontDialog::fontSelected(const QFont &font)

Ce signal est émis lorsqu'une police a été sélectionnée. La police sélectionnée est spécifiée dans ` font`.

Le signal n'est émis que lorsque l'utilisateur a choisi la police définitive à utiliser. Il n'est pas émis pendant que l'utilisateur modifie la police actuelle dans la boîte de dialogue des polices.

Voir également selectedFont(), currentFontChanged() et currentFont.

[static] QFont QFontDialog::getFont(bool *ok, const QFont &initial, QWidget *parent = nullptr, const QString &title = QString(), QFontDialog::FontDialogOptions options = FontDialogOptions())

Affiche une boîte de dialogue modale de sélection de police et renvoie une police.

Si l'utilisateur clique sur « OK », la police sélectionnée est renvoyée. Si l'utilisateur clique sur « Cancel », la police « initial » est renvoyée.

La boîte de dialogue est créée à partir de l'parent fournie et des options spécifiées dans options. title s'affiche comme titre de la fenêtre de la boîte de dialogue et initial correspond à la police initialement sélectionnée. Si le paramètre ok n'est pas nul, la valeur à laquelle il fait référence est définie sur true si l'utilisateur clique sur OK, et sur false s'il clique sur Cancel.

Exemples :

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.
}

La boîte de dialogue peut également être utilisée pour définir directement la police d'un widget :

myWidget.setFont(QFontDialog::getFont(0, myWidget.font()));

Dans cet exemple, si l’utilisateur clique sur OK, la police qu’il a choisie sera utilisée ; s’il clique sur Annuler, la police d’origine sera utilisée.

[static] QFont QFontDialog::getFont(bool *ok, QWidget *parent = nullptr)

Affiche une boîte de dialogue modale de sélection de police et renvoie une police.

Si l'utilisateur clique sur « OK », la police sélectionnée est renvoyée. Si l'utilisateur clique sur « Cancel », la police par défaut de Qt est renvoyée.

La boîte de dialogue est construite à partir du paramètre « parent » fourni. Si le paramètre « ok » n’est pas nul, la valeur à laquelle il fait référence est définie sur « true » si l’utilisateur clique sur « OK », et sur « false » s’il clique sur « Cancel ».

Exemple :

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()
}

Il s'agit d'une fonction surchargée.

void QFontDialog::open(QObject *receiver, const char *member)

Ouvre la boîte de dialogue et relie son signal « fontSelected() » au slot spécifié par « receiver » et « member ».

Le signal sera déconnecté du slot lorsque la boîte de dialogue sera fermée.

QFont QFontDialog::selectedFont() const

Renvoie la police que l'utilisateur a sélectionnée en cliquant sur le bouton « OK » ou un bouton équivalent.

Remarque : cette police n'est pas toujours la même que celle contenue dans la propriété « currentFont », car l'utilisateur peut choisir différentes polices avant de sélectionner définitivement celle qu'il souhaite utiliser.

void QFontDialog::setCurrentFont(const QFont &font)

Définit la police mise en surbrillance dans l'QFontDialog sur celle indiquée par l'font.

Remarque : fonctionde définition de la propriété ` currentFont`.

Voir également currentFont() et selectedFont().

void QFontDialog::setOption(QFontDialog::FontDialogOption option, bool on = true)

Active l'option spécifiée si on est vrai ; sinon, désactive l'option spécifiée.

Voir également options et testOption().

[override virtual] void QFontDialog::setVisible(bool visible)

Réimplémente : QDialog::setVisible(bool visible).

bool QFontDialog::testOption(QFontDialog::FontDialogOption option) const

Renvoie « true » si l'option spécifiée est activée ; sinon, renvoie « false ».

Voir également options et setOption().

© 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.