hello all,
i want to paint some thing (in this example , i do nothing) to a QwtPlotCanvas, so i subclass MyCanvas, in class MyCanvas constructor function , i configure object and implement paintEvent, However, the displaying QwtPlotCanvas is not correct as my except . Wrong result.JPG
my code is listed as following.
in mycanvas.h
#ifndef MYCANVAS_H
#define MYCANVAS_H
#include <qwt_plot_canvas.h>
#include<QPainter>
{
public:
MyCanvas();
};
#endif // MYCANVAS_H
#ifndef MYCANVAS_H
#define MYCANVAS_H
#include <qwt_plot_canvas.h>
#include<QPainter>
class MyCanvas:public QwtPlotCanvas
{
public:
MyCanvas();
void paintEvent(QPaintEvent *event);
};
#endif // MYCANVAS_H
To copy to clipboard, switch view to plain text mode
in mycanvas.cpp
#include "mycanvas.h"
MyCanvas::MyCanvas()
{
this->setBorderRadius( 15 );
}
{
}
#include "mycanvas.h"
MyCanvas::MyCanvas()
{
this->setBorderRadius( 15 );
}
void MyCanvas::paintEvent(QPaintEvent *event)
{
}
To copy to clipboard, switch view to plain text mode
in mainwindow.h
#define MAINWINDOW_H
#include <QMainWindow>
#include"mycanvas.h"
namespace Ui {
class MainWindow;
}
{
Q_OBJECT
public:
explicit MainWindow
(QWidget *parent
= 0);
~MainWindow();
private:
Ui::MainWindow *ui;
MyCanvas * canvas;
};
#endif // MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include"mycanvas.h"
namespace Ui {
class MainWindow;
}
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = 0);
~MainWindow();
private:
Ui::MainWindow *ui;
MyCanvas * canvas;
};
#endif // MAINWINDOW_H
To copy to clipboard, switch view to plain text mode
in mainwindow.cpp
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <qwt_plot_canvas.h>
MainWindow
::MainWindow(QWidget *parent
) : ui(new Ui::MainWindow),
canvas(new MyCanvas)
{
ui->setupUi(this);
ui->qwtPlot->setCanvas(canvas);
}
MainWindow::~MainWindow()
{
delete ui;
}
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <qwt_plot_canvas.h>
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow),
canvas(new MyCanvas)
{
ui->setupUi(this);
ui->qwtPlot->setCanvas(canvas);
}
MainWindow::~MainWindow()
{
delete ui;
}
To copy to clipboard, switch view to plain text mode
any suggestions?
Bookmarks