Bonjour à tous,
alors le problème d'aujourd'hui tourne autour des evènements
En effet je n'ai pas très bien compris la liaison entre QMouseEvent et paintEvent.
Alors dans un premier temps,je declare une classe qui hérite de QWidget avec les fonctions suivantes :
Et donc lorsque j'appuie sur le bouton et que je le maintien il me fait une suite de point .Jusqu'ici tout vas bien.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 //fichier .h void paintEvent(QPaintEvent *qevent); void mouseMoveEvent(QMouseEvent *qevent);
Mais lorsque je rajoute un QMouseReleaseEvent , je ne sais plus comment faire appelle à paintEvent .
Et comme je doute sur la clarté de mon sujet voilà un bout de code
En résumé avec QMouseMoveEvent , je veux qu'il me dessine la suite des points , et Lorsque je relache le boutton,avec QMouseReleaseEvent, je veux qu'il lie le
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 //Fichier .cpp void imageTemps::paintEvent(QPaintEvent *qevent) { //Exemple tiré d'un tuto QPainter *p = new QPainter(this); p->drawPoints(m_points); } void imageTemps::mouseMoveEvent(QMouseEvent *qevent) { //Déja j'ai du mal à voir comment l'evenement de la souris //est lié à celui de paint !!!! m_points << qevent->pos(); update(); void imageTemps::mouseReleaseEvent(QMouseEvent *qevent) { lPoint = qevent->pos(); fPoint = m_points.first(); //Ce qui suit est une tentative qui mene à rien QPainter *p2 = new QPainter(this); p2->drawLine(lPoint,fPoint); update(); } }
1er et le dernier Boutton.(Pour avoir un truc fermé).
Merci pour toutes interventions
Partager