У меня есть кусок кода Qt, который не работал (то есть постоянно показывал пустое окно)
mainwindow.h:
#include <QMainWindow>
#include <QTimer>
#include "qcustomplot.h"#include <qcustomplot.h>
class MainWindow : public QMainWindow
{
public:
MainWindow(QWidget *parent = 0);
};
mainwindow.cpp :
#include "mainwindow.h"#include <QDebug>
#include <QDesktopWidget>
#include <QScreen>
#include <QMessageBox>
#include <QMetaEnum>
#include <iostream>
using namespace std;
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent)
{
QCustomPlot *customPlot = new QCustomPlot;
cout<<"srsly wtf!!!!"<<endl;
// generate some data:
QVector<double> x(101), y(101); // initialize with entries 0..100
for (int i=0; i<101; ++i)
{
x[i] = i/50.0 - 1; // x goes from -1 to 1
y[i] = x[i]*x[i]; // let's plot a quadratic function
}
// create graph and assign data to it:
customPlot->addGraph();
customPlot->graph(0)->setData(x, y);
// give the axes some labels:
customPlot->xAxis->setLabel("x");
customPlot->yAxis->setLabel("y");
// set axes ranges, so we see all data:
customPlot->xAxis->setRange(-1, 1);
customPlot->yAxis->setRange(0, 1);
customPlot->replot();
}
main.cpp:
#include <QApplication>
#include "mainwindow.h"
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainWindow w;
w.show();
return a.exec();
}
и результат должен быть примерно таким
http://www.qcustomplot.com/images/examples/quadraticdemo.png
Я использовал библиотеку QCustomPlot, которую можно найти здесь
http://www.qcustomplot.com/index.php/download
ты должен :
1-создать виджет
2-продвинуть это к QCustomPlot
учебный класс
2-использовать виджет как QCustomPlot
ИЛИ создать QCustomPlot
указатель и установите его так, чтобы он указывал на виджет:
QCustomPlot *customPlot = ui->widget;
ИЛИ ЖЕ
ui->widget->addGraph(); .....
чем продолжить, как вы сделали.
* QCustomPlot
нужен виджет для рисования на нем.