gpt4 book ai didi

c++ - 如何使用qt使用qwebview进行打印

转载 作者:行者123 更新时间:2023-11-30 04:09:21 28 4
gpt4 key购买 nike

当从浏览器访问链接时,有一个打印按钮,当您单击它时,将显示打印功能。我不能在我有 qwebview 的程序上这样做。我在 Ubuntu 11.04 上使用 qt4.7.3。

最佳答案

QWebView 有一个 void print(QPrinter * printer) const 方法。要显示打印对话框,您需要使用 QPrintDialog 类。

您需要将 QAction 或其他信号连接到显示打印对话框的插槽,并将另一个插槽连接到对话框的 accepted 信号。

class MyWindow : public QWidget {
Q_OBJECT
QWebView * m_webView;
QScopedPointer<QPrinter> m_printer;
...
Q_SLOT void showPrintDialog() {
if (!m_printer) m_printer.reset(new QPrinter);
QScopedPointer<QPrintDialog> dialog(new QPrintDialog(m_printer.data(), this));
dialog->setAttribute(Qt::WA_DeleteOnClose);
connect(dialog.data(), SIGNAL(accepted(QPrinter*)), SLOT(print(QPrinter*)));
dialog->show();
dialog.take(); // The dialog will self-delete
}
Q_SLOT void print(QPrinter* printer) {
m_webView->print(printer);
}
};

关于c++ - 如何使用qt使用qwebview进行打印,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21260463/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com