You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 9 Next »

Tee Qt Greatorilla GUI-sovellus (Window tai Dialog). Lisää dialogiin  QwtPlot objekti valikosta (jos QwtPlot ei näy, niin olet asentanut Qwt:n väärin)

Lisäykset projektitiedostoon

#------------------------------------------------\-
# Project created by QtCreator 2009-11-05T17:16:56
#------------------------------------------------\-
TARGET = SimulaattoriQwt
TEMPLATE = app
#lisää kaksi seuraavaa riviä, mutta tarkasta ensin, että polut ovat oikein
INCLUDEPATH += /usr/include/qwt-qt4
# usr/lib hakemistosta pitää löytyä kirjasto qwt-qt4 -l on kirjastolippu
LIBS += -L/usr/lib -lqwt-qt4
SOURCES += main.cpp
mainwindow.cpp
HEADERS  += mainwindow.h
FORMS    += mainwindow.ui

Luokan muodostin

#include <qwt_plot_marker.h>
#include <qwt_legend.h>
#include <qwt_scale_draw.h>
#include <qwt_math.h>
#include <qwt_plot_item.h>
#include "mainwindow.h"
#include "ui_mainwindow.h"


MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent), ui(new Ui::MainWindow)
{
ui->setupUi(this);
//piirrellään vähän kuvia
Kurvi.setText("Eka kuva");
EkaKurvi  = new QwtPlotCurve();
TokaKurvi = new QwtPlotCurve();
EkaKurvi->setPen(QPen(Qt::red));
TokaKurvi->setPen(QPen(Qt::blue));
for(i=0;i<100;i++){ x[i]=i; y1[i]=i; y2[i]=100-i;}//luodaan vähän dataa
EkaKurvi->setData(x, y1, 100);//laitetaan data käppyriin
TokaKurvi->setData(x, y2, 100);
TokaKurvi->attach(ui-> EkaqwtPlot);//liitetään käppyrät plotatavaan alueeseen
EkaKurvi->attach(ui-> EkaqwtPlot);
ui-> EkaqwtPlot->setTitle(Kurvi);// laitetaan plotatavalle alueelle nimi
ui-> EkaqwtPlot->replot(); //piirretään
//muut alustukset
}

MainWindow::~MainWindow()
{
delete EkaKurvi;
delete TokaKurvi;
delete ui;
}

Luokan otsikkotiedosto

#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QtGui/QMainWindow>
#include <qwt_plot_marker.h>
#include <qwt_legend.h>
#include <qwt_scale_draw.h>
#include <qwt_math.h>
#include <qwt_plot_item.h>
#include <qwt_plot_curve.h>
#include <qwt_text.h>

namespace Ui
{
class MainWindow;
}

class MainWindow : public QMainWindow
{
Q_OBJECT

public:
MainWindow(QWidget *parent = 0);
~MainWindow();

private:
Ui::MainWindow *ui;
QwtPlot *EkaPlotti;
QwtPlotCurve *EkaKurvi;
QwtPlotCurve *TokaKurvi;
QwtText Kurvi;
int i;
double x[100], y1[100], y2[100];
};

#endif // MAINWINDOW_H


Add Labels

  • No labels
You must log in to comment.