当我试图在代码中的任何地方声明QPrinter时,我得到了以下错误:
Error 1 error LNK2019: unresolved external symbol "__declspec(dllimport)
public: virtual __thiscall QPrinter::~QPrinter(void)" (__imp_??1QPrinter@@UAE@XZ)
referenced in function "private: void __thiscall ezXpns::on_loginButton_clicked(void)" (?
on_loginButton_clicked@ezXpns@@AAEXXZ)
(path)\TestBuild_April3\TestBuild\ezxpns.obj TestBuild
Error 2 error LNK2019: unresolved external symbol "__declspec(dllimport)
public: __thiscall QPrinter::QPrinter(enum QPrinter::PrinterMode)" (__imp_??
0QPrinter@@QAE@W4PrinterMode@0@@Z) referenced in function "private: void __thiscall
ezXpns::on_loginButton_clicked(void)" (?on_loginButton_clicked@ezXpns@@AAEXXZ)
(path)\TestBuild_April3\TestBuild\ezxpns.obj TestBuild在搜索之后,我发现这意味着,链接器可以找到方法声明,但不能找到方法本身。此外,它似乎在任何提到QPrinter时都会失败。我想这可能是因为这种方法在QT5中被贬低了,但似乎QT打印机通信的新方法还没有发布。可能的问题是什么? QPrinter文件中的#IFDEF预处理器声明?
我的内容包括:
#include <QtWidgets/QMainWindow>
#include "ui_ezxpns.h"
#include "Vector2D.h"
#include <QtPrintSupport\qprinter.h>
#include <QtPrintSupport\qprintdialog.h>
#include <QtPrintSupport\qtprintsupportglobal.h>
#include <qapplication.h>发布于 2013-04-13 16:38:56
我假设你没有为你的项目启用QtPrintSupport。可以通过添加以下内容来启用它
QT += printsupport添加到.pro文件中。
有关更多信息,请访问read here。
https://stackoverflow.com/questions/15985580
复制相似问题