Question

I am trying to use QCustomPlot's example of the following folder, in my program:

/examples/plots

and at the same time I want it accessible from QML. So, I added <QQuickItem> and it resulted in the error stated in the title.

The code:

#include <QQuickItem>
#include <QMainWindow>
#include <QTimer>
#include "../../qcustomplot.h" 

namespace Ui {
class MainWindow;
}

class MainWindow :  public QQuickItem, public QMainWindow
{
  Q_OBJECT

What should I do to make it accessible from QML and solve the error too?

Was it helpful?

Solution

There are Qt Widgets applications and there are Qt Quick applications. Choose one.

QCustomPlot lets you create widgets for a Qt Widgets application.

You can not embed a QWidget in a Qt Quick (=QML) application. The only thing you can do to some extend is to embed QML in your Qt Widgets application. In this case your MainWindow inherits QMainWindow only and contains a QQuickView (see http://www.ics.com/blog/combining-qt-widgets-and-qml-qwidgetcreatewindowcontainer).

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top