2 Stimmen

Hilfe bei qt4 qgraphicsview

Ich habe viele Sachen mit pygtk getan, aber ich entscheide mich, pyqt zu lernen, im stecken an der qgraphicsview ich habe absolutley keine Ahnung, wie man Signale von den Elementen, die ich auf der Grafikansicht, in erster Linie Maus events.how bekomme ich die Maus-Ereignisse von idividual Elemente in einer Szene?

1voto

e8johan Punkte 2869

QGraphicsItem ist kein QObject und kann weder Signale senden noch Slots empfangen. Stattdessen müssen Sie Ereignisse behandeln. Das können Sie entweder durch einen Ereignisfilter, eine Unterklasse der Ansicht oder der Szene zum Abfangen von Ereignissen oder einfach durch die Unterklasse der Elemente selbst und die Implementierung der Ereignisbehandlungsfunktionen (siehe geschützte Mitgliedsfunktionen in der Dokumentation) tun. Vielleicht kann dieses Beispiel von Interesse sein: http://doc.trolltech.com/4.6/graphicsview-diagramscene.html .

0voto

shoosh Punkte 73374

Nachdem Sie ein Element erstellt haben, verbinden Sie die gewünschten Signale mit der Instanz des Widgets, das es enthält.

0voto

shoosh Punkte 73374

Eine andere Möglichkeit ist es, auf die Verwendung von Signalen zu verzichten und die Instanz von QGraphicItem direkt eine Methode des übergeordneten Elements aufrufen zu lassen, indem man einen Verweis auf dieses beibehält. Das ist zwar weniger hübsch als die Verwendung von Signalen, erfüllt aber letztlich den Zweck.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X