Seite 1 von 1
[gelöst] QGraphicsView aktualisieren
Verfasst: 1. Februar 2008 12:54
von christiansmac
Hallo,
ich möchte meine Anzeige, die ich mit QGraphicsView erstellt habe, aktualisieren. Ich habe es mit
probiert, das Fenster baut sich jedoch nicht neu auf.
Was muss ich tun, damit sich das komplette Fenster neuaufbaut?
Verfasst: 1. Februar 2008 18:41
von upsala
update() ist schon die richtige Funktion, die Frage ist eher, warum du diese Funktion benötigen solltest. Eine QGraphicsView aktuallisiert sich normalerweise bei Änderungen selbstständig.
Verfasst: 4. Februar 2008 08:09
von christiansmac
upsala hat geschrieben:Eine QGraphicsView aktuallisiert sich normalerweise bei Änderungen selbstständig.
Tja, das tut meine nicht, deswegen will ich es ja "manuell" beibringen.
Ich erzeuge ein Widget, auf welchen Informationen aus einer Datenbank dargestellt werden. Diese Darstellung (also die Positionen der Items) ändert sich mit der Zeit. Außerdem kann der Benutzer durch ein Untermenü jeder Zeit die Farbgebung ändern. Somit habe ich zwei Funktionen, die dafür sorgen müssen, dass das Widget neu erstellt werden muss.
Verfasst: 4. Februar 2008 08:44
von upsala
Dann hast du aber ein Problem mit deinen Items. setPos() führt automatisch ein update() aus. Und setPen() und setBrush() auch. Außer du hast deinen Farbwechsel selbst im Code gemacht. Dann muß das Item ein update() ausführen. Aber weder die View noch die Scene.
Verfasst: 4. Februar 2008 14:35
von ObeliX
hast du es mal mit QGraphicsView::invalidateScene() versucht ?
gruß Obel
Verfasst: 4. Februar 2008 19:32
von upsala
Dann kann er gleich ein normales Widget verwenden und alles selbst zeichnen...