QPrintDialog 类

QPrintDialog 类提供了用于指定打印机配置的对话框。 更多...

头文件 #include <QPrintDialog>
CMakefind_package(Qt6 REQUIRED COMPONENTS PrintSupport)
target_link_libraries(mytarget PRIVATE Qt6::PrintSupport)
qmakeQT += printsupport
继承 QAbstractPrintDialog

属性

公共函数

QPrintDialog(QPrinter *printer, QWidget *parent = nullptr)
QPrintDialog(QWidget *parent = nullptr)
virtual~QPrintDialog()
voidopen(QObject *receiver, const char *member)
QAbstractPrintDialog::PrintDialogOptionsoptions() const
QPrinter *printer()
voidsetOption(QAbstractPrintDialog::PrintDialogOption option, bool on = true)
voidsetOptions(QAbstractPrintDialog::PrintDialogOptions options)
booltestOption(QAbstractPrintDialog::PrintDialogOption option) const

重实现的公共函数

virtual voiddone(int result) override
virtual intexec() override
virtual voidsetVisible(bool visible) override

信号

voidaccepted(QPrinter *printer)

详细描述

该对话框允许用户更改与文档相关的设置,例如纸张大小和方向、打印类型(彩色或灰度)、页码范围和打印份数。

还提供了控件,以便用户可以从可用的打印机中选择,包括任何配置的网络打印机。

通常,使用 QPrinter 对象构建 QPrintDialog 对象,并使用 exec() 函数执行。

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

如果用户接受对话框,则 QPrinter 对象将正确配置以进行打印。

打印机对话框(如上图所示,采用 Plastique 风格)可以访问常见的打印属性。在使用 CUPS 打印系统的 X11 平台上,可以通过对话框中的“属性”推送按钮修改每个可用打印机的设置。

在 Windows 和 macOS 上,使用的是本地打印对话框,这意味着在对话框上设置的某些 QWidgetQDialog 属性将不被尊重。macOS 上的本地打印对话框不支持设置打印机选项,即 setOptions() 和 setOption() 无效。

在 Qt 4.4 中,可以使用静态函数在 macOS 上显示一个表单。这已在 Qt 4.5 中不再支持。如果您想使用此功能,请使用 QPrintDialog::open()。

另请参阅 QPageSetupDialogQPrinter

属性文档

options : PrintDialogOptions

该属性包含影响对话框外观和感觉的各种选项

默认情况下,所有选项都未启用。

应在显示对话框之前设置选项。在对话框可见时设置它们不一定会立即影响对话框(取决于选项和平台)。

访问函数

QAbstractPrintDialog::PrintDialogOptionsoptions() const
voidsetOptions(QAbstractPrintDialog::PrintDialogOptions options)

另请参阅 setOption() 和 testOption()。

成员函数文档

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

使用给定的 printerparent 构建一个新的模态打印机对话框。

[显式] QPrintDialog::QPrintDialog(QWidget *parent = nullptr)

使用给定的 parent 构建打印对话框。

[虚 noexcept] QPrintDialog::~QPrintDialog()

销毁打印对话框。

[信号] void QPrintDialog::accepted(QPrinter *printer)

当用户接受打印对话框中设置的值时,会发出此信号。参数 printer 包含应用设置的打印机。

[重写虚函数] void QPrintDialog::done(int result)

重新实现了:QDialog::done(int r).

关闭对话框并设置其结果代码为 result。如果使用 exec() 显示此对话框,则 done() 导致本地事件循环结束,并返回 exec() 的 result

注意:此功能不适用于 macOS 和 Windows 平台的本地打印对话框,因为对话框必须模态,并且只能由用户关闭。

另请参阅 QDialog::done

[重写虚函数] int QPrintDialog::exec()

重新实现了:QDialog::exec

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

这是一个重载函数。

打开对话框并将其的 accepted() 信号连接到由 receivermember 指定的槽。

当对话框关闭时,将信号从槽断开。

QPrinter *QPrintDialog::printer()

返回此打印机对话框操作的打印机。当使用 QPrintDialog::open() 方法时这可能很有用。

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

如果 on 为true,则设置给定的 option 为启用状态;否则,清除给定的 option

另请参阅 optionstestOption

[重写虚函数] void QPrintDialog::setVisible(bool visible)

重新实现了:QDialog::setVisible(bool visible)。

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

如果给定的 option 被启用,则返回 true;否则,返回 false。

另请参阅 optionssetOption

© 2024 The Qt Company Ltd. 本文档中的文档贡献归各自所有者所有。本指南提供的文档受自由文档许可证版本 1.3 的许可,由自由软件基金会发布。Qt 和相关标志是 The Qt Company Ltd. 在芬兰和/或其他国家/地区的商标。所有其他商标均归其各自所有者所有。