Esimerkki, jossa liukupakĺkin arvo viedään Qwtplot:n arvoksi
Code Block |
---|
TARGET = SimulaattoriQwt
TEMPLATE = app
INCLUDEPATH += /usr/include/qwt-qt4
LIBS += -L/usr/lib -lqwt-qt4
SOURCES += main.cpp\
mainwindow.cpp
HEADERS += mainwindow.h
FORMS += mainwindow.ui
|
Code Block |
---|
#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);
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;
}
}
|
...