Seite 1 von 1

Neuyeichnen eines Widgets verhindern

Verfasst: 9. Februar 2010 15:12
von bp
Hallo,

ich habe ein kleines Problem. Und ywar liegt es darin, dass ich ein Hauptfenster habe und darin drei Unterfenster.

Jetzt liegt eines der drei Unterfenster unterhalb der beiden anderen fenster.

[1.Unterfenster] [2. Unterfenster]
[3. Unterfenster ]
[Hauptfenster ]

Jetzt muss ich das 3. Unterfenster sehr häufig updaten, da ich ständig Daten aktualisieren muss.

gibt es eine Möglichkeit, dass die beiden Unterfenster 1 und 2 sich nicht ständig wieder neu zeichnen, wenn ich auch das Unterfenster neue zeichne, also so ne Art Cache für die Ausgabe.

Das Verschieben der beiden Unterfenster 1 und 2 ist leider nicht möglich, da es so von unserem Kunden vorgegeben ist.

bp

Verfasst: 9. Februar 2010 15:34
von Christian81
Woher willst Du wissen das das erste und zweite Fenster auch ständig neu gezeichnet werden?

Verfasst: 9. Februar 2010 17:07
von bp
Weil ich selber auch dort eine paintEvent Funktion habe.
Dort habe ich eine Debug Ausgabe hinzugefügt.
Somit kann ich an dieser Stelle sehen, dass jeweils beim neuzeichnen des 3. Unterfensters auch die beiden anderen Unterfenster neu gezeichnet werden.
Hier habe ich sogar, dass ich bei meinen eigenen Controls sehe, dass diese ebenfalls neu gezeichnet werden.

bp

Verfasst: 9. Februar 2010 17:14
von Christian81
Rufst Du von Hand irgendwo ein repaint() oder update() auf? Es wird eigentlich nur neu gezeichnet wenn sich wirklich was geändert hat - und dann ists ja auch nötig.

Verfasst: 9. Februar 2010 17:28
von bp
Das ist ja mein Problem.
Das 3. Unterfenster aktualisiert sich eben des häufigeren einmal.
Aber dann sollten die Unterfenster 1 und 2 ja unbeeinflusst sein, also normaler weise in irgendeinem cache oder so liegen.
Von mir wird so weit ich das hier sehe kein update oder repaint aufgerufen, aber ich werde das alles noch mal genauer unter die Lupe nehmen.

bp

Verfasst: 9. Februar 2010 19:43
von bp
Ich habe da noch einmal einige Tests gemacht, und mir ist zusätzlich aufgefallen, dass wenn das 1. und das 2. Unterfenster nicht über dem 3. Unterfenster liegen, die Unterfenster auch nicht aktualisiert werden.

[1. UF] [3.UF] [2.UF]
[Hauptfenster ]

bp