QLCDNumber et incrémentation sur clic
Bonjour à tous,
je débute avec Qt. Je voudrais avoir un QLCDNumber qui s'incrémente lorsque je clique dessus. Malheureusement, il n'y a pas de slot "clicked()" dans QLCDNumber. En fouillant à droite à gauche, je suis tomber toujours sur la même solution: surcharger QWidget::mouseReleaseButton(event* e).
Cependant je n'y parviens pas.
Comment dois-je procéder ?
Dois je créer un QWidget perso ?
J'ai bien essayé en créant une nouvelle classe héritant de QWidget et ayant un attribut pointeur sur QLCDNumber puis en surchargeant mouseReleaseButton mais il ne se passe rien lorsque je clique sur le QLCDNumber...
Un exemple serait le bien venu.
voici ce que j'ai tenté
mywidget.h
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
#include "QWidget"
#include "QLCDNumber"
class MyQWidget : public QWidget
{
Q_OBJECT
public:
MyQWidget(QWidget* parent=0);
protected:
void mouseReleaseEvent(QMouseEvent*);
public:
QLCDNumber* lcd;
}; |
mywidget.cpp
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
|
#include "mywidget.h"
#include "QDebug"
MyWidget::MyWidget(QWidget *parent)
: QWidget(parent)
{
lcd = new QLCDNumber(parent);
}
void MyWidget::mouseReleaseEvent(QMouseEvent *e)
{
qDebug("je suis bien dans le click");
if (e->button() == Qt::LeftButton)
lcd->display(lcd->intValue()+1);
} |