<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[mehrmaliges OnPaint - Bildschirm flackert]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich möchte eine Liste ausgeben. Bis die Liste gefüllt ist, vergeht ein bisschen an Zeit. Deswegen wird die gesammte Liste neu gemalt, wenn ein neuer Eintrag dazukommt. Leider flackert dann das Bild, obwohl sich der sichtbare Bereich gar nicht mehr ändert.<br />
Welche Tricks gibts dafür?<br />
Hier ein Code-Ausschnitt:</p>
<pre><code>void MyView::OnListElementAdded(CString&amp; strElement)
{
   mListe.Add(strElement);
   Invalidate(TrueFalse??);
   UpdateWindow();
}
void MyView::OnPaint() 
{
    CPaintDC dc(this);
    //male Liste
}
</code></pre>
<p>Vielleicht kommt man hier auch mit irgendwelchen Animationstricks weiter. Leider habe ich bis jetzt nur Infos gefunden für die statische Ausgabe mit DeviceContext, bzw das ist ja eigentlich auch der Normalfall.</p>
<p>Bin dankbar für jede Hilfe.<br />
Gruß</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/74101/mehrmaliges-onpaint-bildschirm-flackert</link><generator>RSS for Node</generator><lastBuildDate>Sun, 26 Apr 2026 14:06:53 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/74101.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 17 May 2004 11:26:47 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to mehrmaliges OnPaint - Bildschirm flackert on Mon, 17 May 2004 11:26:47 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich möchte eine Liste ausgeben. Bis die Liste gefüllt ist, vergeht ein bisschen an Zeit. Deswegen wird die gesammte Liste neu gemalt, wenn ein neuer Eintrag dazukommt. Leider flackert dann das Bild, obwohl sich der sichtbare Bereich gar nicht mehr ändert.<br />
Welche Tricks gibts dafür?<br />
Hier ein Code-Ausschnitt:</p>
<pre><code>void MyView::OnListElementAdded(CString&amp; strElement)
{
   mListe.Add(strElement);
   Invalidate(TrueFalse??);
   UpdateWindow();
}
void MyView::OnPaint() 
{
    CPaintDC dc(this);
    //male Liste
}
</code></pre>
<p>Vielleicht kommt man hier auch mit irgendwelchen Animationstricks weiter. Leider habe ich bis jetzt nur Infos gefunden für die statische Ausgabe mit DeviceContext, bzw das ist ja eigentlich auch der Normalfall.</p>
<p>Bin dankbar für jede Hilfe.<br />
Gruß</p>
]]></description><link>https://www.c-plusplus.net/forum/post/521840</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/521840</guid><dc:creator><![CDATA[electron]]></dc:creator><pubDate>Mon, 17 May 2004 11:26:47 GMT</pubDate></item><item><title><![CDATA[Reply to mehrmaliges OnPaint - Bildschirm flackert on Mon, 17 May 2004 15:22:52 GMT]]></title><description><![CDATA[<p>Es gibt noch ein InvalidateRect (heisst das glaub ich), damit wird dann soweit ich weiss nur der angegeben Bereich neu gezeichnet, wenn er sich ausserhalb des sichtbaren Bereichs befindet sollte es dann eigentlich nicht zu erkennen sein (also kein flacker etc.)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/522060</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/522060</guid><dc:creator><![CDATA[Tow-B.de]]></dc:creator><pubDate>Mon, 17 May 2004 15:22:52 GMT</pubDate></item><item><title><![CDATA[Reply to mehrmaliges OnPaint - Bildschirm flackert on Tue, 18 May 2004 05:52:57 GMT]]></title><description><![CDATA[<p>Hast du mal probiert, das Invalidate wegzulassen? Normalwerweise sollte das Listcontrol sich darum selbst kümmern.</p>
<p>Windows wartet mit WM_PAIN - Messages bis keine anderen messages (außer WM_TIMER) in der Message Queue für den thread stehen. Solange dein Messagehandler &quot;busy&quot; ist, vbekommt das Fenster das WM_PAINT natürlich nicht. Mit UpdateWindow erzwingst du ein sofortiges neuzeichnen der Invalidated-Region.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/522417</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/522417</guid><dc:creator><![CDATA[peterchen]]></dc:creator><pubDate>Tue, 18 May 2004 05:52:57 GMT</pubDate></item><item><title><![CDATA[Reply to mehrmaliges OnPaint - Bildschirm flackert on Tue, 18 May 2004 14:44:26 GMT]]></title><description><![CDATA[<p>Danke erstmal für die Tipps.<br />
So ganz haut das noch nicht hin. Muss wohl noch einiges an Zeit investieren.<br />
Übrigens flackert das Fenster auch beim resize (da flackert fast jedes Fenster), aber meines besonders stark <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/522759</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/522759</guid><dc:creator><![CDATA[electron]]></dc:creator><pubDate>Tue, 18 May 2004 14:44:26 GMT</pubDate></item></channel></rss>