Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Esimerkki, jossa likupakĺkin arvo viedään Qwtplot:n arvoksi

Code Block


p, li { white-space: pre-wrap; }

#include "mainwindow.h"

#include "ui_mainwindow.h"



MainWindow::MainWindow(QWidget *parent)

    : QMainWindow(parent), ui(new Ui::MainWindowClass)

{

    ui->setupUi(this);

    timer = new QTimer(this);//luo uusi ajastin

    ui->Slider->setRange(0,100,1,1);

    connect(ui->Slider, SIGNAL(valueChanged(double)),this, SLOT(PiirraPlotiin(double)));

    Kurvi.setText("Eka kuva");

    Y_Akseli.setText("Y-akseli");

    X_Akseli.setText("X-akseli");

    EkaKurvi  = new QwtPlotCurve();//new luo kekoon (heap) uuden muuttujan tilavarauksen

    EkaKurvi->setPen(QPen(Qt::red));

    EkaKurvi->attach(ui->qwtPlot);

    ui->qwtPlot->setAxisTitle(0,Y_Akseli);

    ui->qwtPlot->setAxisTitle(2,X_Akseli);

    timer->start(1000);//käynnistä ajastin, timeout sekunnin välein



    connect(timer, SIGNAL(timeout()), this, SLOT(update()));

    indeksi=0;

    EdellinenY=0;



}



MainWindow::~MainWindow()

{

    delete ui;

}





void MainWindow::PiirraPlotiin(double Y)

{



    if((int)Y != EdellinenY)

    {



        x[indeksi]=(double)indeksi;

        y[indeksi]=Y;

        EkaKurvi->setData(x, y, indeksi);//laitetaan data käppyriin

        ui-> qwtPlot->replot(); //piirretään

        indeksi++;

        if(indeksi>9999)indeksi=0;

        EdellinenY=(int)Y;

    }

}





void MainWindow::update()

{





}