我尝试使用Qt QChart绘制折线图。我使用Visual Studio 2013和Qt 5.8。我创建了一个简单的QApplication。当我粘贴QLineSeries * 系列时,它说QLineSeries未定义。我如何解决这个问题?
#include "QtGuiApplication2.h"
#include <QtWidgets/QApplication>
#include <QtCharts/QChartView>
#include <QtCharts/QLineSeries>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QtGuiApplication2 w;
QLineSeries *series = new QLineSeries();
w.show();
return a.exec();
}
2条答案
按热度按时间vu8f3i0k1#
您需要在以下位置链接QT5Charts:
我想,你不会忘记添加命名空间吧?
如果您使用cmake,只需将以下内容添加到cmake文件中:
ccrfmcuu2#
在我的情况下,我也为QtCharts库“未定义”所有
#include
。经过长时间的谷歌搜索,以下操作帮助了我(考虑使用Qt 5.15.2的Visual Studio 2019):1.检查是否有宏
$(Qt_INCLUDEPATH_)
(项目-〉[项目]属性-〉C/C++ -〉常规-〉附加包含目录)和宏$(Qt_LIBS_)
(项目-〉[项目]属性-〉链接器-〉输入-〉其他依赖项)。它们应该已经有lib
目录的所有路径。您可以通过按字段附近的键来检查它(向下箭头-〉编辑... -〉宏〉〉-〉[插入宏名称])。如果你有这些宏中的路径,那么你不需要再次添加它们,直接转到第3点。如果没有,转到第2点。1.在中添加公共路径(项目-〉[项目]属性-〉常规-〉其他库目录)作为
C:\Qt\5.15.2\msvc2019_64\lib
(对你来说可能会有一点不同)。有了这种精度,中只能提及相对路径(链接器-〉输入-〉附加依赖项),即Qt5Chartsd.lib
。(Project -〉[Project] Properties -〉C/C++ -〉General -〉Additional Include Directories)将绝对路径写成C:\Qt\5.15.2\msvc2019_64\include\QtCharts
(同样,可以不同)。1.使用Qt VS Tools,(项目-〉[项目]属性-〉...)。您需要(Qt项目设置-〉Qt模块)。与Qt Creator一样,需要添加新模块
charts
。使用(向下箭头-〉选择模块...)在字段附近,您甚至可以看到所有可能激活的模块。对我来说,我终于有了core;gui;widgets;charts
。1.该解决方案在没有这一点的情况下对我有效,但只是以防万一-将所有必需的动态库
.dll
添加到与.exe
项目文件相同的目录中。.dll
库在运行时加载,因此它们可能在某些情况下有所帮助。