CPaintDC zyklisch neu zeichen
-
Hallo zusammen
ich habe folgende herausforderung.
ich habe eine eingene klasse von cstatic abgeleitet und die onpaint überschrieben. in dieser soll eine kurve immer mit aktualaisierten daten gezeichnet werden. soweit so gut. starte ich die anwendung, wird die onpaint einmal ausgeführt und alles korrekt dargestellt, ein weiteres neuzeichnen tritt erst ein, wenn das fenster über den bildschirmrand hinaus geschoben wird und wieder herein. soweit auch klar, da ja vom system erst dann eine WM_PAINT nachricht kommt.
nun sende ich aus meiner hauptanwendung alle sekunde eine wm_paint an das abgeleitete control. es wird korrekt in diese gesprungen, alle variablen sind korrekt gesetzt (dc, rect usw.) aber es erfolgt kein neuzeichnen! ich habe mehrfach debuggt und die daten überprüft, der einsprung in die onpaint erfolgt, es wird alles berechnet, aber eine darstellung auf dem fenster erfolgt nicht. nur wie oben genannt beim verschieben des dialogs außerhalb des sichtbaren bereiches.kann mir noch jemand einen tipp geben, wieso nichts dargestellt wird, obwohl die funktion durchlaufen wird?
danke, ks
-
Setze Dir einen Timer und führe Invalidate entsprechend auf dieses Fenster aus. Dann wird es neu gezeichnet.
WM_PAINT ist kene Nachricht, die man selbst versenden darf!
-
tausenddank für deine schnelle hilfe. genau das hat wunderbar geholfen
spitze