Autoscrolling beim Bewegen von QGraphicsItems

Alles rund um die Programmierung mit Qt
Antworten
dennisDennis
Beiträge: 17
Registriert: 23. September 2011 16:21

Autoscrolling beim Bewegen von QGraphicsItems

Beitrag von dennisDennis »

Hallo QtFreunde,

ich habe eine QGraphicsScene mit mehreren QGraphicsItems, die sich mit der Maus verschieben lassen.
Die Scene ist viel größer als der gezeigte Ausschnitt auf dem Bildschirm.
Wie bringt man den QGraphicsView zum automatischen Scrollen, wenn ein Graphicsitem an den Rand des GraphicsView gezogen wird?

Ich mache es zur Zeit mit QGraphicsView::ensureVisible() im MouseMoveEvent. Allerdings ist das Ergebnis nicht zufriendenstellend, da bei einem horizontalen Verschieben des Graphicsitems am Rand gleichzeitig horizontal und vertikal gescrollt wird.

Gruß
Dennis
toba
Beiträge: 28
Registriert: 22. September 2011 09:28

Re: Autoscrolling beim Bewegen von QGraphicsItems

Beitrag von toba »

versuchs mal mit
setSceneRect(QRect(0,0,0,0)); (int width, int height auf 0, die 2 am Anfang (int x,int y) eig. egal.)
Bei mir wurden dann immer automatisch scrollbalken angelegt sobald ein Item aus dem Sichtbaren bereich gezogen wurde.
dennisDennis
Beiträge: 17
Registriert: 23. September 2011 16:21

Re: Autoscrolling beim Bewegen von QGraphicsItems

Beitrag von dennisDennis »

das ist leider die falsche Funktion. Damit verändert man die QGraphicsScene Oberfläche, nicht den sichtbaren Ausschnitt.
Antworten