Sur cette page

QPrintDialog Class

La classe QPrintDialog fournit une boîte de dialogue permettant de spécifier la configuration de l'imprimante. Plus d'informations...

En-tête : #include <QPrintDialog>
CMake : find_package(Qt6 REQUIRED COMPONENTS PrintSupport)
target_link_libraries(mytarget PRIVATE Qt6::PrintSupport)
qmake : QT += printsupport
Héritages : QAbstractPrintDialog

Propriétés

Fonctions publiques

QPrintDialog(QWidget *parent = nullptr)
QPrintDialog(QPrinter *printer, QWidget *parent = nullptr)
virtual ~QPrintDialog()
void open(QObject *receiver, const char *member)
QAbstractPrintDialog::PrintDialogOptions options() const
QPrinter *printer()
void setOption(QAbstractPrintDialog::PrintDialogOption option, bool on = true)
void setOptions(QAbstractPrintDialog::PrintDialogOptions options)
bool testOption(QAbstractPrintDialog::PrintDialogOption option) const

Fonctions publiques réimplémentées

virtual void done(int result) override
virtual int exec() override
virtual void setVisible(bool visible) override

Signaux

void accepted(QPrinter *printer)

Description détaillée

La boîte de dialogue permet aux utilisateurs de modifier les paramètres relatifs aux documents, tels que le format et l'orientation du papier, le type d'impression (couleur ou niveaux de gris), le nombre de pages et le nombre de copies à imprimer.

Des contrôles sont également fournis pour permettre aux utilisateurs de choisir parmi les imprimantes disponibles, y compris les imprimantes réseau configurées.

En règle générale, les objets QPrintDialog sont construits avec un objet QPrinter et exécutés à l'aide de la fonction exec().

QPrintDialog printDialog(printer, parent);
if (printDialog.exec() == QDialog::Accepted) {
    // print ...
}

Si la boîte de dialogue est acceptée par l'utilisateur, l'objet QPrinter est correctement configuré pour l'impression.

Capture d'écran du menu d'impression d'un documentCapture d'écran des paramètres dans lesquels le document sera imprimé

La boîte de dialogue de l'imprimante (illustrée ci-dessus dans le style Plastique) permet d'accéder aux propriétés d'impression courantes. Sur les plates-formes X11 qui utilisent le système d'impression CUPS, les paramètres de chaque imprimante disponible peuvent être modifiés via le bouton poussoir Properties de la boîte de dialogue.

Sous Windows et macOS, la boîte de dialogue d'impression native est utilisée, ce qui signifie que certaines propriétés QWidget et QDialog définies dans la boîte de dialogue ne seront pas respectées. Sur macOS, la boîte de dialogue d'impression native ne permet pas de définir des options d'impression, c'est-à-dire que setOptions() et setOption() n'ont aucun effet.

Dans Qt 4.4, il était possible d'utiliser les fonctions statiques pour afficher une feuille sur macOS. Ceci n'est plus supporté dans Qt 4.5. Si vous voulez cette fonctionnalité, utilisez QPrintDialog::open().

Voir aussi QPageSetupDialog et QPrinter.

Documentation sur les propriétés

options : PrintDialogOptions

Cette propriété contient les différentes options qui affectent l'aspect et la convivialité de la boîte de dialogue

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

Les options doivent être définies avant d'afficher la boîte de dialogue. Le fait de les définir alors que la boîte de dialogue est visible ne garantit pas un effet immédiat sur la boîte de dialogue (en fonction de l'option et de la plate-forme).

Fonctions d'accès :

QAbstractPrintDialog::PrintDialogOptions options() const
void setOptions(QAbstractPrintDialog::PrintDialogOptions options)

Voir également setOption() et testOption().

Documentation sur les fonctions membres

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

Construit un dialogue d'impression avec l'adresse parent.

[explicit] QPrintDialog::QPrintDialog(QPrinter *printer, QWidget *parent = nullptr)

Construit une nouvelle boîte de dialogue modale pour l'imprimante donnée printer avec l'imprimante donnée parent.

[virtual noexcept] QPrintDialog::~QPrintDialog()

Détruit le dialogue d'impression.

[signal] void QPrintDialog::accepted(QPrinter *printer)

Ce signal est émis lorsque l'utilisateur accepte les valeurs définies dans la boîte de dialogue d'impression. Le paramètre printer comprend l'imprimante à laquelle les paramètres ont été appliqués.

[override virtual] void QPrintDialog::done(int result)

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

Ferme la boîte de dialogue et définit son code de résultat à result. Si cette boîte de dialogue est affichée avec exec(), done() provoque la fin de la boucle d'événement locale et exec() renvoie result.

Remarque : cette fonction ne s'applique pas à la boîte de dialogue d'impression native sur les plates-formes Mac macOS et Windows, car la boîte de dialogue doit être modale et seul l'utilisateur peut la fermer.

Voir également QDialog::done().

[override virtual] int QPrintDialog::exec()

Réimplémente : QDialog::exec().

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

Ouvre la boîte de dialogue et connecte son signal accepted() à l'emplacement spécifié par receiver et member.

Le signal sera déconnecté de l'emplacement lorsque la boîte de dialogue sera fermée.

QPrinter *QPrintDialog::printer()

Renvoie l'imprimante sur laquelle cette boîte de dialogue fonctionne. Cela peut être utile lors de l'utilisation de la méthode QPrintDialog::open().

void QPrintDialog::setOption(QAbstractPrintDialog::PrintDialogOption option, bool on = true)

Définit le site option comme étant activé si on est vrai ; sinon, efface le site option.

Voir aussi options et testOption().

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

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

bool QPrintDialog::testOption(QAbstractPrintDialog::PrintDialogOption option) const

Renvoie true si le site option est activé ; sinon, renvoie false.

Voir aussi 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.