Seite 1 von 1

[gelöst] Mouse-Event auf ein QLabel begrenzen

Verfasst: 30. Dezember 2008 16:48
von qtNiko
hallo,

in meinem Hauptfenster habe ich ein QLabel, auf dem Bilder ausgegeben werden.
In diesem Bild sollen mit der Mouse Stellen markiert werden.

Dazu habe ich die Methode mousePressEvent(..) meiner Hauptklasse entsprechend erweitert. Diese Methode wird jedoch immer aufgerufen, wenn ich irgendwo in meinem Hauptfenster klicke, nicht nur innerhalb des QLabel, das graphView_scene heißt.

Natürlich kann ich abfragen, ob der Mouseklick innerhalb graphView_scene erfolgte. Eleganter wäre es jedoch, wenn man ein mousePressEvent(..) innerhalb von QLabel graphView_scene hätte, das nur dann aufgerufen wird, wenn der Klick innerhalb graphView_scene stattfand.

Wie kann ich dies erreichen? Und geht das überhaupt?

Verfasst: 30. Dezember 2008 17:35
von RD1978
Eigene Klasse von QLabel ableiten und mousePressEvent( ... ) dort überschreiben

oder

über den QObject::eventFilter

Wenn Du damit nicht größere Sachen vorhast, wäre die 2. Variante wohl einfacher.

Verfasst: 31. Dezember 2008 11:18
von qtNiko
Danke, der Eventfilter ist das richtige.