在Qt中打印预览
Print Preview in Qt
我想预览页面或进行打印预览。一个预览窗口正在打开,但qt窗口的内容不在其中。我打印预览的代码如下:
void User::on_actionprintPreview_triggered()
{
QPrinter printer(QPrinter::HighResolution);
QPrintPreviewDialog preview(&printer, this);
connect(&preview, SIGNAL(paintRequested(QPrinter *)),
this, SLOT(print(QPrinter *)));
preview.exec();
}
void User::print(QPrinter *printer)
{
// print the page
QPainter painter(printer);
int w = printer->pageRect().width();
int h = printer->pageRect().height();
QRect page(0, 0, w, h);
QFont font = painter.font();
font.setPixelSize((w+h)/100);
painter.setFont(font);
painter.drawText(page, Qt::AlignBottom | Qt::AlignRight,
QDateTime::currentDateTime().
toString(Qt::DefaultLocaleShortDate));
page.adjust(w/20, h/20, -w/20, -h/20);
}
我如何才能在其中获取qt窗口的内容。我做错了什么吗。请帮我解决这个问题。
如果您想打印对话框或小部件的内容,您的print
插槽应该是:
void User::print(QPrinter * printer)
{
QPainter painter(printer);
painter.setWindow(this->rect());
this->render(&painter);
}
相关文章:
- 无法将行编辑中的文本打印到 Qt C++ 中的标签
- 为什么Qt Creator的应用程序输出不能从spdlog记录器打印
- 面临在 if 语句之外打印变量数据的问题 完成使用 Qt 编程
- 将 Qt 属性枚举值打印为键字符串
- 在代码仍在 C++ QT 中运行时显示打印输出
- 如何使用Qt为每个地址打印二进制文件
- 如何在Qt中打印.xlsx格式
- 如何在打印机完成打印时从打印机获取Qt信号?
- 从QT打印PDF文件
- QT打印二进制树指令消息
- 如何让我的C++代码与QT按钮一起使用并打印到QlineEdit?
- 使用 QT 打印为 pdf
- 通过插槽打印/显示QT函数调用的内容
- 使用 Qt 打印 PDF 文件
- 解析 xml 到对象,打印标签 - QT 之间的内容
- 使用QT创建者将文本打印在C 中
- 从QT C 返回自定义对象,并在QML中打印属性
- 如何将QT GUI应用程序的版本打印到主机上
- 在文本浏览器中打印Qt浮点变量
- 如何在linux上打印Qt:HANDLE?(Qt5)