Qt MouseMoveEvent auf QLabel
Verfasst: 26. März 2010 14:06
Hallo,
ich beschäftige mich erst seit kurzem mit Qt und passe gerade den Beispielcode des ImageViewers meinen Bedürfnissen an. Ich konnte aber bisher nichts zu meiner Frage finden: Ich würde gerne bei einem Bild (Dargestellt als Pixmap auf QLabel) die Maus Position und später auch den Grauwert des Bildes an dieser Position in der Statusbar anzeigen lassen. Ich bekomme es hin, dass ich bei gedrückter Maus und dem MouseMoveEvent Koordinaten angezeigt bekomme. Leider gehören diese nicht zum Label, sondern sind die Koordinaten des Fensters.
Kann mir jemand weiterhelfen?
ich beschäftige mich erst seit kurzem mit Qt und passe gerade den Beispielcode des ImageViewers meinen Bedürfnissen an. Ich konnte aber bisher nichts zu meiner Frage finden: Ich würde gerne bei einem Bild (Dargestellt als Pixmap auf QLabel) die Maus Position und später auch den Grauwert des Bildes an dieser Position in der Statusbar anzeigen lassen. Ich bekomme es hin, dass ich bei gedrückter Maus und dem MouseMoveEvent Koordinaten angezeigt bekomme. Leider gehören diese nicht zum Label, sondern sind die Koordinaten des Fensters.
Code: Alles auswählen
void ImageViewer::mouseMoveEvent( QMouseEvent* event){
int xpos = (event->pos()).x();
int ypos = (event->pos()).y();
cout << xpos << " " << ypos << endl;
QString qstr;
qstr.sprintf(" W:%d,%d / G:%d,%d ", event->pos().x(), event->pos().y(), event->globalPos().x(), event->globalPos().y());
statusBar()->showMessage(qstr);
//Wie bekommt man die Maus Position des Labels???
}