【发布时间】:2012-09-01 00:50:35
【问题描述】:
我会尽快完成,因为这是一个非常简单的问题。如何在 Qt 中创建一个插槽,打印出我的文本编辑器中的所有内容。只是一个打印按钮,其行为与您期望的打印按钮行为一样。我正在阅读有关 QPrintDialog 的信息,但我无法让它工作。这是我尝试过的:
QPrintDialog printDialog(printer, this);
if(printDialog.exec() == QDialog::Accepted){
ui->textBox->print(printer);
}
我尝试在它之前执行 QPrinter *printer = new QPrinter ......但这给了我各种各样的错误,我有点认为它会。我已经有#include QPrintDialog 那么我该如何真正让它工作呢?非常感谢任何帮助或建议。
编辑:我正在寻找我的问题的答案,我发现了一个似乎更接近工作的代码,如果这有意义的话。
QPrinter 打印机;
QPrintDialog *printDialog = new QPrintDialog(&printer, this);
printDialog->setWindowTitle("Print Document");
if (printDialog->exec() != QDialog::Accepted)
return;
但是,现在我收到一条错误消息:
C:\Documents and Settings\Me\My Documents\C++ Projects\Qt Gui Applications\WordWrite-build-desktop-Qt_4_8_1_for_Desktop_-_MinGW__Qt_SDK__Debug\..\WordWrite\wordwritemain.cpp:130: error: aggregate 'QPrinter printer' has incomplete type and cannot be defined
【问题讨论】:
-
那些“各种错误”到底是什么?
-
C:\Documents and Settings\Me\My Documents\C++ Projects\Qt Gui Applications\WordWrite-build-desktop-Qt_4_8_1_for_Desktop__-_MinGW__Qt_SDK__Debug\..\WordWrite\wordwritemain.cpp:132:错误:不完整类型'struct QPrinter'的无效使用
-
c:\QtSDK\Desktop\Qt\4.8.1\mingw\include\QtGui\qwindowdefs.h:81:错误:'struct QPrinter' C:\Documents and Settings\Me 的前向声明\My Documents\C++ Projects\Qt Gui Applications\WordWrite-build-desktop-Qt_4_8_1_for_Desktop__-_MinGW__Qt_SDK__Debug\..\WordWrite\wordwritemain.cpp:133: 错误:没有匹配函数调用'QPrintDialog::QPrintDialog(QPrinter**, WordWriteMain* const)'
-
对不起间距,但是有三个错误。