Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Qt 如何在QCustomPlot中启用OpenGL加速?_Qt_Qcustomplot - Fatal编程技术网

Qt 如何在QCustomPlot中启用OpenGL加速?

Qt 如何在QCustomPlot中启用OpenGL加速?,qt,qcustomplot,Qt,Qcustomplot,我的Qt版本是5.12.2。我在.pro文件中添加了DEFINES+=QCUSTOMPLOT\u USE\u OPENGL。My.pro文件如下所示: #------------------------------------------------- # # Project created by QtCreator 2019-04-05T21:23:52 # #------------------------------------------------- QT += core

我的Qt版本是5.12.2。我在.pro文件中添加了DEFINES+=QCUSTOMPLOT\u USE\u OPENGL。My.pro文件如下所示:

#-------------------------------------------------
#
# Project created by QtCreator 2019-04-05T21:23:52
#
#-------------------------------------------------

QT       += core gui
QT       += charts
QT       += network


greaterThan(QT_MAJOR_VERSION, 4): QT += widgets printsupport

TARGET = oscilloscope_msvc2015
TEMPLATE = app

# The following define makes your compiler emit warnings if you use
# any feature of Qt which has been marked as deprecated (the exact warnings
# depend on your compiler). Please consult the documentation of the
# deprecated API in order to know how to port your code away from it.
DEFINES += QT_DEPRECATED_WARNINGS
DEFINES += QCUSTOMPLOT_USE_OPENGL


# You can also make your code fail to compile if you use deprecated APIs.
# In order to do so, uncomment the following line.
# You can also select to disable deprecated APIs only up to a certain version of Qt.
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000    # disables all the APIs deprecated before Qt 6.0.0
CONFIG += c++11

SOURCES += \
        main.cpp \
        mainwindow.cpp \
    fourier.cpp \
    plotdata.cpp \
    datathread.cpp \
    axisthread.cpp \
    qcustomplot.cpp

HEADERS += \
        mainwindow.h \
    fourier.h \
    plotdata.h \
    datathread.h \
    axisthread.h \
    qcustomplot.h

FORMS += \
        mainwindow.ui \
    fourier.ui

# Default rules for deployment.
qnx: target.path = /tmp/$${TARGET}/bin
else: unix:!android: target.path = /opt/$${TARGET}/bin
!isEmpty(target.path): INSTALLS += target

RESOURCES += \
    res.qrc
但当我使用setOpenGl(true)打开OpenGL时,它会不断报告错误:

void QCustomPlot::setOpenGl(bool, int) QCustomPlot can't use OpenGL because QCUSTOMPLOT_USE_OPENGL was not defined during compilation (add 'DEFINES += QCUSTOMPLOT_USE_OPENGL' to your qmake .pro file)
那么,如何在QCustomPlot中启用OpenGL加速功能呢?

尝试运行qmake,然后重新生成。

我遇到了这个问题,完成这些操作后,一切正常。

您可以显示您的.pro。我已经添加了我的.pro文件。请帮我找出问题所在。谢谢!我在Linux中用GCC编译了一个QCustomPlot示例,它对我来说没有任何问题,可能是MSVC的问题,它试图删除构建文件夹并重新编译。是的,我更改了编译器,没有问题。非常感谢。张贴答案。。