Problems on Mousemove event on Graphicsview and QTabWidget
-
Hi,
I trying to make a CAD program on QT 4.8 (linux version) and i got few bugs.
First problem:
On forms i add an graphicsview and two LCDNUmbers, the program should got mouse position and display it on both LCDNUmbers.
So i reimplement my void mouseMoveEvent(QMouseEvent *event) on my Widget and use LCD fuction Display to change Lcdnumber value. I also have to setmousetracking(true) to my widget and my Graphicsview. But if i do this the mousemove dont work, idk why.
If i reimplement Graphicsview, making void mouseMoveEvent(QMouseEvent *event) for him and set event->ignore(); the program work! but i know it should ignore() if i dont reimplemente the function for graphicsview!
Another strange thing, if i reimplemente void mouseMoveEvent(QMouseEvent *event) for graphicsview and put QWidget::mouseMoveEvent(event) instend event->ignore(), the program work! ( its normal because by default QWidget::mouseMoveEvent(event) ignore() mouse events). But if i put QGraphicsview::mouseMoveEvent(event) the problem persist!
QGraphicsview::mouseMoveEvent(event) should be = QWidget::mouseMoveEvent(event) ????
Second problem:
Ok the first problem can be solved if i reinplement void mouseMoveEvent(QMouseEvent *event) and set event->ignore().
On form i make a Qtabwidget and put my Graphicsview inside of QTabWidget. The moveevent Stop working again!, but this time if i press mouse buton it work, so i think its an mousetracking(true) problem. I set mousetracking(true) for tabWidget, tab, tabwidget->widget(0)->setmousetracking(true) and nothing happen! idk why mousetracking(true) dont working!
Sry for my bad english, i hope you guys undestand my both problem
-
I solved my problem by making an signal on graphicsview, so i can emit signal on mousemove() of graphicview and update display on Lcdnumber