QPrintDialog Class

Die Klasse QPrintDialog bietet einen Dialog zum Festlegen der Druckerkonfiguration. Mehr...

Kopfzeile: #include <QPrintDialog>
CMake: find_package(Qt6 REQUIRED COMPONENTS PrintSupport)
target_link_libraries(mytarget PRIVATE Qt6::PrintSupport)
qmake: QT += printsupport
Vererbt: QAbstractPrintDialog

Eigenschaften

Öffentliche Funktionen

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

Reimplementierte öffentliche Funktionen

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

Signale

void accepted(QPrinter *printer)

Detaillierte Beschreibung

Der Dialog ermöglicht es dem Benutzer, dokumentenbezogene Einstellungen zu ändern, z. B. Papierformat und -ausrichtung, Druckart (Farbe oder Graustufen), Seitenumfang und Anzahl der zu druckenden Kopien.

Es werden auch Steuerelemente zur Verfügung gestellt, mit denen der Benutzer aus den verfügbaren Druckern auswählen kann, einschließlich aller konfigurierten Netzwerkdrucker.

Normalerweise werden QPrintDialog-Objekte mit einem QPrinter -Objekt erstellt und mit der Funktion exec() ausgeführt.

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

Wenn der Dialog vom Benutzer akzeptiert wird, ist das QPrinter Objekt korrekt für den Druck konfiguriert.

Der Druckerdialog (oben im Plastique-Stil dargestellt) ermöglicht den Zugriff auf allgemeine Druckeigenschaften. Auf X11-Plattformen, die das CUPS-Drucksystem verwenden, können die Einstellungen für jeden verfügbaren Drucker über die Drucktaste des Dialogs Properties geändert werden.

Unter Windows und macOS wird der native Druckdialog verwendet, was bedeutet, dass einige QWidget und QDialog Eigenschaften, die im Dialog eingestellt wurden, nicht berücksichtigt werden. Der native Druckdialog unter macOS unterstützt das Setzen von Druckeroptionen nicht, d.h. setOptions() und setOption() haben keine Wirkung.

In Qt 4.4 war es möglich, die statischen Funktionen zu verwenden, um ein Blatt unter macOS anzuzeigen. Dies wird in Qt 4.5 nicht mehr unterstützt. Wenn Sie diese Funktionalität wünschen, verwenden Sie QPrintDialog::open().

Siehe auch QPageSetupDialog und QPrinter.

Dokumentation der Eigenschaften

options : PrintDialogOptions

Diese Eigenschaft enthält die verschiedenen Optionen, die das Aussehen des Dialogs beeinflussen

Standardmäßig sind alle Optionen deaktiviert.

Die Optionen sollten vor dem Anzeigen des Dialogs eingestellt werden. Wenn sie gesetzt werden, während der Dialog sichtbar ist, ist nicht garantiert, dass sie eine unmittelbare Auswirkung auf den Dialog haben (abhängig von der Option und der Plattform).

Zugriffsfunktionen:

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

Siehe auch setOption() und testOption().

Dokumentation der Mitgliedsfunktionen

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

Konstruiert einen Druckdialog mit der angegebenen parent.

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

Konstruiert einen neuen modalen Druckerdialog für den angegebenen printer mit dem angegebenen parent.

[virtual noexcept] QPrintDialog::~QPrintDialog()

Löscht den Druckdialog.

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

Dieses Signal wird ausgegeben, wenn der Benutzer die im Druckdialog eingestellten Werte akzeptiert hat. Der Parameter printer enthält den Drucker, auf den die Einstellungen angewendet wurden.

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

Reimplements: QDialog::done(int r).

Schließt den Dialog und setzt seinen Ergebniscode auf result. Wenn dieser Dialog mit exec() angezeigt wird, beendet done() die lokale Ereignisschleife, und exec() gibt result zurück.

Hinweis: Diese Funktion gilt nicht für den nativen Druckdialog auf den Plattformen Mac macOS und Windows, da der Dialog modal sein muss und nur der Benutzer ihn schließen kann.

Siehe auch QDialog::done().

[override virtual] int QPrintDialog::exec()

Reimplements: QDialog::exec().

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

Dies ist eine überladene Funktion.

Öffnet den Dialog und verbindet sein Signal accepted() mit dem durch receiver und member angegebenen Slot.

Das Signal wird vom Slot getrennt, wenn der Dialog geschlossen wird.

QPrinter *QPrintDialog::printer()

Gibt den Drucker zurück, auf dem dieser Druckerdialog arbeitet. Dies kann nützlich sein, wenn Sie die Methode QPrintDialog::open() verwenden.

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

Setzt das angegebene option auf aktiv, wenn on wahr ist; andernfalls wird das angegebene option gelöscht.

Siehe auch options und testOption().

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

Reimplements: QDialog::setVisible(bool visible).

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

Gibt true zurück, wenn die angegebene option aktiviert ist; andernfalls wird false zurückgegeben.

Siehe auch options und setOption().

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