Bildschirmzeichnen fehlerhaft

CodeFatal

Erfahrenes Mitglied
Hallo,

wünsche allen ein Frohes neues Jahr.

Ich habe mal wieder ein kleines Problem, bei dem ich eure Hilfe brauche.
Ich zeichne eine Grafik auf einen MFC-Dialog. Das klappt auch soweit. Wenn ich nun aber ein anderes Programm Fenster, welches diese Grafik verdeckt bewege, wird die Grafik nur teilweise neu gezeichnet. Bei einem Dialog aus dem Programm mit der Grafik tritt das Problem nicht auf.
Das ganze hat für mich den Anschein, als ob Windows nicht alle Clip Bereiche an mein Programm weitergibt.

Habt ihr noch eine Idee, wo ich evt. ein manuelles Invalidate einfügen kann, bzw. wo ich die Grafik zeichnen muss?
Die Grafik wird nur in der OnPaint() auf den Dlg gezeichnet.

Danke schon einmal für eure Hilfe.
 

Endurion

Erfahrenes Mitglied
Vermutlich wird auch WM_ERASEBKGND ausgelöst, das hängt nicht immer mit einem WM_PAINT zusammen.

Evtl. wäre die Zeichenroutine auch dort gut plaziert (oder in beiden).
 

CodeFatal

Erfahrenes Mitglied
Hallo,

danke für den Tipp - hät man auch selbst drauf kommen können.

Invalidier da jetzt den mit "pDC->GetClipBox(&r);" neu zu zeichnenden Bereich.
Ist zwar nicht das schnellste aber am Ende siehts wieder gut aus.

Gruß
 

Neue Beiträge