Auf dieser Seite

QPrintPreviewDialog Class

Die Klasse „QPrintPreviewDialog“ stellt einen Dialog zur Vorschau und Konfiguration von Seitenlayouts für die Druckausgabe bereit. Mehr...

Kopfzeile: #include <QPrintPreviewDialog>
CMake: find_package(Qt6 REQUIRED COMPONENTS PrintSupport)
target_link_libraries(mytarget PRIVATE Qt6::PrintSupport)
qmake: QT += printsupport
Erbt von: QDialog

Öffentliche Funktionen

QPrintPreviewDialog(QPrinter *printer, QWidget *parent = nullptr, Qt::WindowFlags flags = Qt::WindowFlags())
QPrintPreviewDialog(QWidget *parent = nullptr, Qt::WindowFlags flags = Qt::WindowFlags())
virtual ~QPrintPreviewDialog()
void open(QObject *receiver, const char *member)
QPrinter *printer()

Neu implementierte öffentliche Funktionen

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

Signale

void paintRequested(QPrinter *printer)

Ausführliche Beschreibung

Die Verwendung von QPrintPreviewDialog in Ihrer bestehenden Anwendung ist unkompliziert:

  1. Erstellen Sie das `QPrintPreviewDialog`-Objekt.

    Sie können ein `QPrintPreviewDialog`-Objekt mit einem vorhandenen ` QPrinter `-Objekt anlegen oder von `QPrintPreviewDialog` eines für Sie erstellen lassen, wobei es sich um den Standarddrucker des Systems handelt.

  2. Verbinden Sie das Signal ` paintRequested()` mit einem Slot.

    Wenn der Dialog eine Reihe von Vorschauseiten generieren muss, wird das Signal „ paintRequested()“ ausgelöst. Sie können für den eigentlichen Druck genau denselben Code verwenden wie für die Generierung der Vorschau, einschließlich des Aufrufs von „ QPrinter::newPage()“, um eine neue Seite in der Vorschau zu beginnen. Verbinden Sie einen Slot mit dem Signal „ paintRequested()“, wobei Sie auf das „ QPrinter “-Objekt zeichnen, das an den Slot übergeben wird.

  3. Rufen Sie ` exec()` auf.

    Rufen Sie ` QPrintPreviewDialog::exec()` auf, um den Vorschau-Dialog anzuzeigen.

Siehe auch „ QPrinter“ , „ QPrintDialog “, „ QPageSetupDialog “ und „ QPrintPreviewWidget “.

Dokumentation zu den Member-Funktionen

[explicit] QPrintPreviewDialog::QPrintPreviewDialog(QPrinter *printer, QWidget *parent = nullptr, Qt::WindowFlags flags = Qt::WindowFlags())

Erstellt ein `QPrintPreviewDialog` auf Basis von ` printer ` und mit ` parent ` als übergeordnetem Widget. Die Widget-Flags ` flags ` werden an den Konstruktor von ` QWidget ` übergeben.

Siehe auch QWidget::setWindowFlags().

[explicit] QPrintPreviewDialog::QPrintPreviewDialog(QWidget *parent = nullptr, Qt::WindowFlags flags = Qt::WindowFlags())

Dadurch wird ein internes „ QPrinter “-Objekt erstellt, das den Standarddrucker des Systems verwendet.

Dies ist eine überladene Funktion.

[virtual noexcept] QPrintPreviewDialog::~QPrintPreviewDialog()

Zerstört die „ QPrintPreviewDialog “.

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

Implementiert: QDialog::done(int r).

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

Öffnet das Dialogfeld und verbindet dessen „finished(int)“-Signal mit dem durch „ receiver “ und „ member “ angegebenen Slot.

Das Signal wird vom Slot getrennt, sobald das Dialogfeld geschlossen wird.

[signal] void QPrintPreviewDialog::paintRequested(QPrinter *printer)

Dieses Signal wird ausgelöst, wenn der „ QPrintPreviewDialog “ eine Reihe von Vorschauseiten generieren muss.

Die bereitgestellte „ printer “-Instanz ist das Zeichenobjekt, auf das Sie den Inhalt jeder Seite zeichnen sollten. Verwenden Sie dabei die „ QPrinter “-Instanz genauso, wie Sie es beim direkten Drucken tun würden.

QPrinter *QPrintPreviewDialog::printer()

Gibt einen Zeiger auf das „ QPrinter “-Objekt zurück, auf das dieser Dialog derzeit angewendet wird.

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

Implementiert: ` QDialog::setVisible` (bool visible).

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