<?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[BeginPaint ein Muss ?]]></title><description><![CDATA[<p>Wie ist das denn eigentlich mit dem BeginPaint, muss man das immer aufrufen?<br />
Reicht es nicht, wenn man sich einmalig zu Programmbeginn ein hdc auf das hWnd holt?<br />
Oder ändert sich das während des Programms ?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/210239/beginpaint-ein-muss</link><generator>RSS for Node</generator><lastBuildDate>Wed, 22 Apr 2026 02:52:58 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/210239.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 08 Apr 2008 20:37:07 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to BeginPaint ein Muss ? on Tue, 08 Apr 2008 20:37:07 GMT]]></title><description><![CDATA[<p>Wie ist das denn eigentlich mit dem BeginPaint, muss man das immer aufrufen?<br />
Reicht es nicht, wenn man sich einmalig zu Programmbeginn ein hdc auf das hWnd holt?<br />
Oder ändert sich das während des Programms ?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1488747</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1488747</guid><dc:creator><![CDATA[WinAPI n00b]]></dc:creator><pubDate>Tue, 08 Apr 2008 20:37:07 GMT</pubDate></item><item><title><![CDATA[Reply to BeginPaint ein Muss ? on Tue, 08 Apr 2008 20:46:38 GMT]]></title><description><![CDATA[<p>AFAIK bezieht sich der DC aus der PAINTSTRUCT von BeginPaint() tatsächlich nur auf den vorher durch InvalidateRect() markierten Bereich und hat direkt nichts mit dem DC des Fensters zu tun. Das Jonglieren mit den verschiedenen DCs ist sowieso schon seltsam genug, da sollte man durchaus die vorgesehenen Techniken benutzen. Und für WM_PAINT ist das nunmal das BeginPaint()-EndPaint()-Paar.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1488755</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1488755</guid><dc:creator><![CDATA[mad_martin]]></dc:creator><pubDate>Tue, 08 Apr 2008 20:46:38 GMT</pubDate></item><item><title><![CDATA[Reply to BeginPaint ein Muss ? on Tue, 08 Apr 2008 21:24:23 GMT]]></title><description><![CDATA[<p>Hmm, ich wollt mir ne DIB Bitmap erzeugen und dort diverses reinmalen.<br />
Mit set Pixel und so. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1488783</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1488783</guid><dc:creator><![CDATA[WinAPI n00b]]></dc:creator><pubDate>Tue, 08 Apr 2008 21:24:23 GMT</pubDate></item><item><title><![CDATA[Reply to BeginPaint ein Muss ? on Wed, 09 Apr 2008 05:48:12 GMT]]></title><description><![CDATA[<blockquote>
<p>Und für WM_PAINT ist das nunmal das BeginPaint()-EndPaint()-Paar</p>
</blockquote>
<p>Kannst dir aber auch außerhalb des Context'es den Wert holen, über GetDC() oder sowas.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1488820</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1488820</guid><dc:creator><![CDATA[pivke]]></dc:creator><pubDate>Wed, 09 Apr 2008 05:48:12 GMT</pubDate></item><item><title><![CDATA[Reply to BeginPaint ein Muss ? on Wed, 09 Apr 2008 06:24:36 GMT]]></title><description><![CDATA[<p>Nur durch BeginPaint wird ein invalidierter Bereich eines DCs wieder als &quot;gezeichnet/gültig/valide&quot; markiert. Wird BeginPaitn nicht aufgreufen wird der Windowsmanager immer wieder eine WM_PAINT Nachricht für dieses Fenster ausgeben.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1488834</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1488834</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Wed, 09 Apr 2008 06:24:36 GMT</pubDate></item><item><title><![CDATA[Reply to BeginPaint ein Muss ? on Wed, 09 Apr 2008 06:38:33 GMT]]></title><description><![CDATA[<p>und wer macht das mit dem invalidate ? muss ich das selber aufrufen ?<br />
also erst invalidate() und dann wird automatisch WM_PAINT gesendet ?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1488838</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1488838</guid><dc:creator><![CDATA[WinAPI n00b]]></dc:creator><pubDate>Wed, 09 Apr 2008 06:38:33 GMT</pubDate></item><item><title><![CDATA[Reply to BeginPaint ein Muss ? on Wed, 09 Apr 2008 07:17:43 GMT]]></title><description><![CDATA[<p>WM_PAINT wird immer gesendet, wenn ein Fensterbereich ungültig wird, also z. B. wenn die Größe verändert wird oder ein Teil des Fensters durch ein Menü verdeckt war und jetzt wieder gezeichnet werden soll: Das Menü wird gelöscht bzw. mit dem Fensterinhalt übermalt (weil der Monitor nunmal nur 2-dimensional ist). In der DefWindowProc wird die WM_PAINT einfach mit BeginPaint-EndPaint ohne was dazwischen abgehandelt. Damit wird nur der Fensterhintergrund neu gezeichnet, alle Inhalte werden dadurch gelöscht. Du kannst eine WM_PAINT selbst auslösen, indem Du InvalidateRect o. ä. aufrufst. Wenn etwas danach im Fenster erhalten bleibt, mußt Du es in WM_PAINT bearbeiten. Aber nur EndPaint ist in der Lage, den Fensterbereich als gültig zu erklären.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1488855</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1488855</guid><dc:creator><![CDATA[Elektronix]]></dc:creator><pubDate>Wed, 09 Apr 2008 07:17:43 GMT</pubDate></item><item><title><![CDATA[Reply to BeginPaint ein Muss ? on Wed, 09 Apr 2008 08:42:42 GMT]]></title><description><![CDATA[<p>Elektronix schrieb:</p>
<blockquote>
<p>Aber nur EndPaint ist in der Lage, den Fensterbereich als gültig zu erklären.</p>
</blockquote>
<p>&lt;besserwissermodus&gt;<br />
Das macht nicht EndPaint. Es macht BeginPaint! <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f576.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--sunglasses"
      title=":sunglasses:"
      alt="🕶"
    /></p>
<p><a href="http://msdn2.microsoft.com/en-us/library/ms534911(VS.85).aspx" rel="nofollow">http://msdn2.microsoft.com/en-us/library/ms534911(VS.85).aspx</a></p>
<blockquote>
<p>The BeginPaint function automatically validates the entire client area. Neither the ValidateRect nor ValidateRgn function should be called if a portion of the update region must be validated before the next WM_PAINT message is generated.</p>
<p>The system continues to generate WM_PAINT messages until the current update region is validated.</p>
</blockquote>
<p>&lt;/besserwissermodus&gt;</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1488901</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1488901</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Wed, 09 Apr 2008 08:42:42 GMT</pubDate></item><item><title><![CDATA[Reply to BeginPaint ein Muss ? on Wed, 09 Apr 2008 09:44:05 GMT]]></title><description><![CDATA[<p>mad_martin schrieb:</p>
<blockquote>
<p>... Das Jonglieren mit den verschiedenen DCs ist sowieso schon seltsam genug...</p>
</blockquote>
<p>Das sag ich dir, um ne Bitmap ins Fenster zu blitten brauch ich auch extra ein HDC für die Bitmap, das kompatibel zum Fenster HDC sein muss.<br />
Die Bitmap kann ich mit SelectObject ins HDC 'reinladen'. Was auch immer da intern passiert. Seltsam finde ich das allerdings auch !</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1488941</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1488941</guid><dc:creator><![CDATA[WinAPI n00b]]></dc:creator><pubDate>Wed, 09 Apr 2008 09:44:05 GMT</pubDate></item><item><title><![CDATA[Reply to BeginPaint ein Muss ? on Wed, 09 Apr 2008 09:49:27 GMT]]></title><description><![CDATA[<p>Martin Richter schrieb:</p>
<blockquote>
<p>Elektronix schrieb:</p>
<blockquote>
<p>Aber nur EndPaint ist in der Lage, den Fensterbereich als gültig zu erklären.</p>
</blockquote>
<p>&lt;besserwissermodus&gt;<br />
Das macht nicht EndPaint. Es macht BeginPaint! <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f576.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--sunglasses"
      title=":sunglasses:"
      alt="🕶"
    /></p>
<p><a href="http://msdn2.microsoft.com/en-us/library/ms534911(VS.85).aspx" rel="nofollow">http://msdn2.microsoft.com/en-us/library/ms534911(VS.85).aspx</a></p>
<blockquote>
<p>The BeginPaint function automatically validates the entire client area. Neither the ValidateRect nor ValidateRgn function should be called if a portion of the update region must be validated before the next WM_PAINT message is generated.</p>
<p>The system continues to generate WM_PAINT messages until the current update region is validated.</p>
</blockquote>
<p>&lt;/besserwissermodus&gt;</p>
</blockquote>
<p>Errare humanum est... Abgekürzt: E h e <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f921.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--clown_face"
      title=":clown:"
      alt="🤡"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1488943</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1488943</guid><dc:creator><![CDATA[Elektronix]]></dc:creator><pubDate>Wed, 09 Apr 2008 09:49:27 GMT</pubDate></item><item><title><![CDATA[Reply to BeginPaint ein Muss ? on Wed, 09 Apr 2008 10:10:42 GMT]]></title><description><![CDATA[<p>ich frag mich gerade wegen dem fensterhintergrund...den muss ich doch nicht selber zeichnen oder ?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1488952</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1488952</guid><dc:creator><![CDATA[WinAPI n00b]]></dc:creator><pubDate>Wed, 09 Apr 2008 10:10:42 GMT</pubDate></item><item><title><![CDATA[Reply to BeginPaint ein Muss ? on Wed, 09 Apr 2008 11:04:22 GMT]]></title><description><![CDATA[<p>Sagen wir mal so: Wenn Du ein Bild auf ein Blatt Papier zeichnen willst- mußt Du dann das Papier auch selbst zeichnen? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /><br />
Wie schon vorher gesagt: Den Fensterhintergrund zeichnet Windows immer selbst. Du legst höchstens die Hindergrundfarbe fest (in der Wndclass-Struktur).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1488983</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1488983</guid><dc:creator><![CDATA[Elektronix]]></dc:creator><pubDate>Wed, 09 Apr 2008 11:04:22 GMT</pubDate></item></channel></rss>