
Originally Posted by
axeljaeger
If you show me your code, I will have a look at it.
Hi,
I started writing some code.
The class interface:
#ifndef __WAVEFORMDISPLAY_H__
#define __WAVEFORMDISPLAY_H__
#include <QWidget>
class WaveFormDisplay
: public QWidget{
Q_OBJECT
public:
WaveFormDisplay
( QWidget* parent
= 0 );
protected:
private:
};
#endif //__WAVEFORMDISPLAY_H__
#ifndef __WAVEFORMDISPLAY_H__
#define __WAVEFORMDISPLAY_H__
#include <QWidget>
class WaveFormDisplay : public QWidget
{
Q_OBJECT
public:
WaveFormDisplay( QWidget* parent = 0 );
protected:
void paintEvent( QPaintEvent* event );
void mousePressEvent(QMouseEvent *event);
void mouseMoveEvent(QMouseEvent *event);
void mouseReleaseEvent(QMouseEvent *event);
private:
};
#endif //__WAVEFORMDISPLAY_H__
To copy to clipboard, switch view to plain text mode
And the methods:
#include "waveformdisplay.h"
WaveFormDisplay
::WaveFormDisplay( QWidget* parent
/* = 0 */ ){
setAutoFillBackground(true);
setWindowTitle( tr("Waveform display") );
resize(500, 200);
}
// Paint event
{
QLine line
( 0, height
() / 2.0, width
(), height
() / 2.0 );
QPen pen
( Qt
::blue,
1 );
// red solid line, 1 pixels wide
painter.setPen( pen );
painter.
setRenderHint( QPainter::Antialiasing );
painter.drawLine(line);
}
// Mouse press event
{
event->accept();
}
// Mouse move event
{
event->accept();
}
// Mouse release event
{
event->accept();
}
#include "waveformdisplay.h"
WaveFormDisplay::WaveFormDisplay( QWidget* parent /* = 0 */ )
{
setPalette( QPalette( QColor( 250, 250, 200 ) ) );
setAutoFillBackground(true);
setWindowTitle( tr("Waveform display") );
resize(500, 200);
}
// Paint event
void WaveFormDisplay::paintEvent( QPaintEvent* event )
{
QLine line( 0, height() / 2.0, width(), height() / 2.0 );
QPen pen( Qt::blue, 1 ); // red solid line, 1 pixels wide
QPainter painter( this );
painter.setPen( pen );
painter.setRenderHint( QPainter::Antialiasing );
painter.drawLine(line);
}
// Mouse press event
void mousePressEvent( QMouseEvent *event )
{
event->accept();
}
// Mouse move event
void mouseMoveEvent( QMouseEvent *event )
{
event->accept();
}
// Mouse release event
void mouseReleaseEvent( QMouseEvent *event )
{
event->accept();
}
To copy to clipboard, switch view to plain text mode
Do you already have some suggestions? Code is just to start and I already got linker error about mouse event
Bookmarks