Salut.
J'ai fait une classe boutton qui herite de QPushButton afin d'y assigner d'autres slots et signaux:
Le probleme que j'ai pas pu le resoudre, c'est comment ne pas valider le click lorsque le curseur n'est pas au dessus du boutton: c'est à dire: si j'appuie sur mon boutton, puis je deplace le curseur, tout en maintenant le boutton du souris appuyé, jusqu'à ce que le curseur ne soit pas sur le boutton. Lorsque je relache, le click, par defaut, est emis. Par contre, je ne veux pas que ça se produit que lorsque le curseur soit sur le boutton.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33 #ifndef BOUTON_H #define BOUTON_H #include <QPushButton> #include <QMouseEvent> class bouton : public QPushButton { Q_OBJECT void mouseReleaseEvent(QMouseEvent* e) { if (e->button()== Qt::LeftButton) emit clicked(); if (e->button()== Qt::RightButton) emit rclicked(); }; void mousePressEvent(QMouseEvent* e) { if (e->button()== Qt::LeftButton) emit sclicked(); }; public: bouton(QWidget *parent=0); signals: void rclicked(); void sclicked(); }; #endif // BOUTON_H
Merci bien pour votre aide!
Partager