<?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[Nicht in WM_PAINT zeichnen]]></title><description><![CDATA[<p>Hallo!</p>
<p>Ich versuche mich einmal kurz zu fassen:<br />
Wenn ich Linien und so zeichnen will mache ich das in WM_PAINT.<br />
ABER:<br />
Ich mag zum Beispiel einen Punkt malen wenn ich wo drauf drücke, also zum Beispiel im &quot;Bereich&quot; von LBUTTONDOWN. Wenn ich da den Code (der mir, wenn ich ihn in den WM_PAINT &quot;Bereich&quot; stelle funktioniert) einfüge funktioniert der nicht.<br />
Warum und wie kann ich das am besten beheben?</p>
<p>Vielen Dank fürs Lesen und vielleicht Antwort schreiben!</p>
<p>Steve <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/topic/115719/nicht-in-wm_paint-zeichnen</link><generator>RSS for Node</generator><lastBuildDate>Fri, 03 Jul 2026 00:30:54 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/115719.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 18 Jul 2005 11:44:36 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Nicht in WM_PAINT zeichnen on Mon, 18 Jul 2005 11:44:36 GMT]]></title><description><![CDATA[<p>Hallo!</p>
<p>Ich versuche mich einmal kurz zu fassen:<br />
Wenn ich Linien und so zeichnen will mache ich das in WM_PAINT.<br />
ABER:<br />
Ich mag zum Beispiel einen Punkt malen wenn ich wo drauf drücke, also zum Beispiel im &quot;Bereich&quot; von LBUTTONDOWN. Wenn ich da den Code (der mir, wenn ich ihn in den WM_PAINT &quot;Bereich&quot; stelle funktioniert) einfüge funktioniert der nicht.<br />
Warum und wie kann ich das am besten beheben?</p>
<p>Vielen Dank fürs Lesen und vielleicht Antwort schreiben!</p>
<p>Steve <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/833450</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/833450</guid><dc:creator><![CDATA[Sir_Steve]]></dc:creator><pubDate>Mon, 18 Jul 2005 11:44:36 GMT</pubDate></item><item><title><![CDATA[Reply to Nicht in WM_PAINT zeichnen on Mon, 18 Jul 2005 11:48:32 GMT]]></title><description><![CDATA[<p>Immer in WM_PAINT zeichnen, in WM_LBUTTONDOWN nur eine Variable setzen und InvalidateRect aufrufen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/833452</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/833452</guid><dc:creator><![CDATA[invalidate]]></dc:creator><pubDate>Mon, 18 Jul 2005 11:48:32 GMT</pubDate></item><item><title><![CDATA[Reply to Nicht in WM_PAINT zeichnen on Mon, 18 Jul 2005 11:50:10 GMT]]></title><description><![CDATA[<p>Du könntest ja einfach bei WM_LBUTTONDOWN</p>
<pre><code class="language-cpp">InvalidateRect(hwnd,0,false);
UpdateWindow(true);
</code></pre>
<p>machen und dafür sorgen das es gezeichnet wird. Ich bin mir aber nicht sicher ob es das ist was du suchst.</p>
<p>BR</p>
<p>//Edit da bin ich doch zuspät <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/833455</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/833455</guid><dc:creator><![CDATA[evilissimo]]></dc:creator><pubDate>Mon, 18 Jul 2005 11:50:10 GMT</pubDate></item><item><title><![CDATA[Reply to Nicht in WM_PAINT zeichnen on Mon, 18 Jul 2005 11:51:06 GMT]]></title><description><![CDATA[<p>UpdateWindow brauch man eigentlich nie. <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/833457</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/833457</guid><dc:creator><![CDATA[invalidate]]></dc:creator><pubDate>Mon, 18 Jul 2005 11:51:06 GMT</pubDate></item><item><title><![CDATA[Reply to Nicht in WM_PAINT zeichnen on Mon, 18 Jul 2005 11:54:37 GMT]]></title><description><![CDATA[<p>Wahnsinn, das ging echt schnell, vielen Dank!</p>
<p>Ich schaue mir das einmal an! Wenn ich es nicht verstehe dann melde ich mich!</p>
<p>Nochmal danke!</p>
<p>Steve <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/833461</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/833461</guid><dc:creator><![CDATA[Sir_Steve]]></dc:creator><pubDate>Mon, 18 Jul 2005 11:54:37 GMT</pubDate></item><item><title><![CDATA[Reply to Nicht in WM_PAINT zeichnen on Mon, 18 Jul 2005 12:18:17 GMT]]></title><description><![CDATA[<p>Ich poste einmal was ich habe:</p>
<pre><code class="language-cpp">case WM_LBUTTONDOWN:
    CRect test; //bitte ignoriert die Namensgebung ;)
    CPoint ptDown (200,200);
    test.BottomRight() = pwDown;
    int hoehe, breite;
    hoehe = 200;
    breite = 250;
    test.Height() = hoehe;
    test.Width() = breite;
    InvalidateRect(hwnd, test, false);
    UpdateWindow(hwnd);
</code></pre>
<p>So habe ich es mir aus der MSDN rausgesaugt, wirkt aber irgendwie umständlich ...</p>
<p>Es geht leider nur bis CPOINT. Es steht zwar in der MSDN aber er nimmt es nicht <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>
<p>Es kommt dann der Fehler<br />
error C2065: 'CPOINT': undeclared identifier</p>
<p>Nun ???</p>
]]></description><link>https://www.c-plusplus.net/forum/post/833481</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/833481</guid><dc:creator><![CDATA[Sir_Steve]]></dc:creator><pubDate>Mon, 18 Jul 2005 12:18:17 GMT</pubDate></item><item><title><![CDATA[Reply to Nicht in WM_PAINT zeichnen on Mon, 18 Jul 2005 12:26:51 GMT]]></title><description><![CDATA[<p>Sir_Steve schrieb:</p>
<blockquote>
<p>Ich poste einmal was ich habe:</p>
<pre><code class="language-cpp">case WM_LBUTTONDOWN:
    CRect test; //bitte ignoriert die Namensgebung ;)
    CPoint ptDown (200,200);
    test.BottomRight() = pwDown;
    int hoehe, breite;
    hoehe = 200;
    breite = 250;
    test.Height() = hoehe;
    test.Width() = breite;
    InvalidateRect(hwnd, test, false);
    UpdateWindow(hwnd);
</code></pre>
<p>So habe ich es mir aus der MSDN rausgesaugt, wirkt aber irgendwie umständlich ...</p>
<p>Es geht leider nur bis CPOINT. Es steht zwar in der MSDN aber er nimmt es nicht <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>
<p>Es kommt dann der Fehler<br />
error C2065: 'CPOINT': undeclared identifier</p>
<p>Nun ???</p>
</blockquote>
<p>Das ist MFC und kein WinAPI in der WinAPI gibt es keinen C Prefix für Klassen<br />
POINT und RECT sind aus der WinAPI</p>
<p>Edit: Probiers mal so: ich weis zwar auch nicht was du da machst aber probiers einfach mal</p>
<pre><code class="language-cpp">case WM_LBUTTONDOWN:
    RECT test; //bitte ignoriert die Namensgebung ;)
    test.top = 200;
    test.left = 200; 
    test.bottom = test.top  + 200;
    test.right  = test.left + 250;
    InvalidateRect(hwnd, &amp;test, false);
    UpdateWindow(hwnd);
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/833484</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/833484</guid><dc:creator><![CDATA[evilissimo]]></dc:creator><pubDate>Mon, 18 Jul 2005 12:26:51 GMT</pubDate></item><item><title><![CDATA[Reply to Nicht in WM_PAINT zeichnen on Mon, 18 Jul 2005 12:41:33 GMT]]></title><description><![CDATA[<p>Man lasst doch das updatewindow sein, das ist unnütz</p>
]]></description><link>https://www.c-plusplus.net/forum/post/833499</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/833499</guid><dc:creator><![CDATA[(.)(.)]]></dc:creator><pubDate>Mon, 18 Jul 2005 12:41:33 GMT</pubDate></item><item><title><![CDATA[Reply to Nicht in WM_PAINT zeichnen on Mon, 18 Jul 2005 12:43:14 GMT]]></title><description><![CDATA[<p>Sorry 4 that!!!</p>
<p>Also, dank RECT konnte ich jetzt einige Zeilen kürzen, es sieht nun wie folgt aus:</p>
<pre><code class="language-cpp">case WM_LBUTTONDOWN:
    InvalidateRect (hwnd, &amp;test, false);
    //Test ist so ein RECT und hat 4 Werte, dank Watch weiß ich auch dass diese okay sind...
</code></pre>
<p>Das Gute: Ich bekomme keinen Fehler mehr.<br />
Das Schlechte: Ich bekomme gar nichts, er zeichnet mir das Ding nicht <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/833500</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/833500</guid><dc:creator><![CDATA[Sir_Steve]]></dc:creator><pubDate>Mon, 18 Jul 2005 12:43:14 GMT</pubDate></item><item><title><![CDATA[Reply to Nicht in WM_PAINT zeichnen on Mon, 18 Jul 2005 12:44:39 GMT]]></title><description><![CDATA[<p>Lol. Dieses Rechteck was du da definierst ist nur der Bereich der neugezeichnet werden soll. Rechtecke zeichnet man mit der Funktion Rectangle.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/833502</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/833502</guid><dc:creator><![CDATA[invalidate]]></dc:creator><pubDate>Mon, 18 Jul 2005 12:44:39 GMT</pubDate></item><item><title><![CDATA[Reply to Nicht in WM_PAINT zeichnen on Mon, 18 Jul 2005 12:46:34 GMT]]></title><description><![CDATA[<p>(.)(.) schrieb:</p>
<blockquote>
<p>Man lasst doch das updatewindow sein, das ist unnütz</p>
</blockquote>
<p>ich das hab grad auch nur angepasst, ist mir gar net aufgefallen. Aber naja egal.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/833505</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/833505</guid><dc:creator><![CDATA[evilissimo]]></dc:creator><pubDate>Mon, 18 Jul 2005 12:46:34 GMT</pubDate></item><item><title><![CDATA[Reply to Nicht in WM_PAINT zeichnen on Mon, 18 Jul 2005 12:48:55 GMT]]></title><description><![CDATA[<p>Hört auf mich zu verwirren!!!</p>
<p>Kann mir mal wer bitte 4 Zeilen Quellcode schicken???</p>
<p>Danke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/833507</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/833507</guid><dc:creator><![CDATA[Sir_Steve]]></dc:creator><pubDate>Mon, 18 Jul 2005 12:48:55 GMT</pubDate></item><item><title><![CDATA[Reply to Nicht in WM_PAINT zeichnen on Mon, 18 Jul 2005 12:57:09 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">bool paintRectangle = false; // eine Variable die mit deinem Fenster assoziiert ist

case WM_LBUTTONDOWN:
    paintRectangle = true;
    InvalidateRect(hWnd, NULL, TRUE);
    return 0;
case WM_PAINT:
{
    PAINTSTRUCT paintData;
    HDC hDC = BeginPaint(hWnd, &amp;paintData);
    if(paintRectangle)
    {
        Rectangle(hDC, 0, 0, 100, 100);
    }
    EndPaint(hWnd, &amp;paintData);
    return 0;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/833515</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/833515</guid><dc:creator><![CDATA[FAQ-Eintrag]]></dc:creator><pubDate>Mon, 18 Jul 2005 12:57:09 GMT</pubDate></item><item><title><![CDATA[Reply to Nicht in WM_PAINT zeichnen on Mon, 18 Jul 2005 13:11:10 GMT]]></title><description><![CDATA[<p>Gut, nachdem ich es noch leicht angepasst habe funktioniert das jetzt, danke einmal.</p>
<p>Und nur ob ich das jetzt verstanden habe:<br />
Ich sage ich will den Bereich den ich in dem InvalidateRect definiere noch mal zeichnen oder wie, und dann wird paint aufgerufen ... huh??</p>
]]></description><link>https://www.c-plusplus.net/forum/post/833533</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/833533</guid><dc:creator><![CDATA[Sir_Steve]]></dc:creator><pubDate>Mon, 18 Jul 2005 13:11:10 GMT</pubDate></item><item><title><![CDATA[Reply to Nicht in WM_PAINT zeichnen on Mon, 18 Jul 2005 13:30:13 GMT]]></title><description><![CDATA[<p>Du fügst mit InvalidateRect einen Bereich zur Update Region hinzu.</p>
<p>Dabei wird nicht sofort eine WM_PAINT Nachricht generiert.<br />
(Über UpdateWindow könntest du das erzwingen.)</p>
<p>Erst GetMessage/PeekMessage generieren die WM_PAINT Nachricht, wenn die Update Region nicht leer ist und keine anderen Nachrichten für das Fenster vorhanden sind.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/833552</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/833552</guid><dc:creator><![CDATA[keinehilfe]]></dc:creator><pubDate>Mon, 18 Jul 2005 13:30:13 GMT</pubDate></item><item><title><![CDATA[Reply to Nicht in WM_PAINT zeichnen on Mon, 18 Jul 2005 13:55:36 GMT]]></title><description><![CDATA[<p>Okay, dann verstehe ich inetwa was da vorgeht, werde mich noch spielen!<br />
Jedenfalls danke an alle beteiligten!</p>
<p>Steve <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/833589</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/833589</guid><dc:creator><![CDATA[Sir_Steve]]></dc:creator><pubDate>Mon, 18 Jul 2005 13:55:36 GMT</pubDate></item><item><title><![CDATA[Reply to Nicht in WM_PAINT zeichnen on Mon, 18 Jul 2005 17:36:02 GMT]]></title><description><![CDATA[<p>er koennte sich aber auch den device kontext in einer beliebiegen funktion ueber GetDC() anfordern und dann nicht in WM_PAINT zeichnen... dann spart man sich diese kontroll-variablen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/833763</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/833763</guid><dc:creator><![CDATA[Moh]]></dc:creator><pubDate>Mon, 18 Jul 2005 17:36:02 GMT</pubDate></item><item><title><![CDATA[Reply to Nicht in WM_PAINT zeichnen on Mon, 18 Jul 2005 17:39:20 GMT]]></title><description><![CDATA[<p>dann ist es aber beim nächsten neuzeichnen nicht mehr da.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/833769</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/833769</guid><dc:creator><![CDATA[????????]]></dc:creator><pubDate>Mon, 18 Jul 2005 17:39:20 GMT</pubDate></item><item><title><![CDATA[Reply to Nicht in WM_PAINT zeichnen on Mon, 18 Jul 2005 17:41:27 GMT]]></title><description><![CDATA[<p>verdammt, stimmt ja... vergessen</p>
]]></description><link>https://www.c-plusplus.net/forum/post/833774</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/833774</guid><dc:creator><![CDATA[Moh]]></dc:creator><pubDate>Mon, 18 Jul 2005 17:41:27 GMT</pubDate></item><item><title><![CDATA[Reply to Nicht in WM_PAINT zeichnen on Tue, 19 Jul 2005 05:16:54 GMT]]></title><description><![CDATA[<p>Also, das funktioniert echt gut, main Zeichenprogramm (dank unglaublicher Benutzerunfreundlichkeit und schmerzhafter Bedinung <strong>Pain(t)</strong> genannt <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /> ) funktioniert einigermaßen.<br />
ABER: Wenn ich ein paar Sachen zeichne und das Fenster dann minimiere und wieder aufrufe ist alles weg <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="😞"
    /><br />
Nicht dass das bei meinen Zeichenkünsten schade ist aber ...<br />
Wie verhindere ich das?<br />
Gibt es dazu ein Event das ich abfangen kann?</p>
<p>Grüße, Steve! <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/833998</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/833998</guid><dc:creator><![CDATA[Sir_Steve]]></dc:creator><pubDate>Tue, 19 Jul 2005 05:16:54 GMT</pubDate></item><item><title><![CDATA[Reply to Nicht in WM_PAINT zeichnen on Tue, 19 Jul 2005 05:20:10 GMT]]></title><description><![CDATA[<p>Wenn du alles in WM_PAINT zeichnest kommt alles wieder.</p>
<p>Benutzt du jetzt doch GetDC und zeichnest direkt?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/833999</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/833999</guid><dc:creator><![CDATA[:-))]]></dc:creator><pubDate>Tue, 19 Jul 2005 05:20:10 GMT</pubDate></item><item><title><![CDATA[Reply to Nicht in WM_PAINT zeichnen on Tue, 19 Jul 2005 05:23:41 GMT]]></title><description><![CDATA[<p>Was denke ich mal noch möglich wäre, wäre ein Memory DC wo du dann in WM_LBUTTONDOWN und anderen Nachrichten reinzeichnest und dieses Memory DC dann in WM_PAINT auf den DC deines Fensters blittest.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/834000</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/834000</guid><dc:creator><![CDATA[:-))]]></dc:creator><pubDate>Tue, 19 Jul 2005 05:23:41 GMT</pubDate></item><item><title><![CDATA[Reply to Nicht in WM_PAINT zeichnen on Tue, 19 Jul 2005 07:17:06 GMT]]></title><description><![CDATA[<p>Also, ich mache es so:<br />
Wenn ich links klicke werden Koordinaten gespeichert, nach zweitem Klick wird dann, je nach Auswahl, ein Kreis oder ein Viereck (welches leider noch ein nicht transparentes &quot;Innenleben&quot; hat) gezeichnet, und zwar direkt im WM_PAINT.</p>
<p>Die Idee mit diesem Memory DC klingt durchaus logisch.<br />
Verstehe ich das richtig: Ich male quasi in dieses DC und lade das bei Paint dann rein, oder?</p>
<p>Und wie realisiere ich das?</p>
<p>Grüße, Steve! <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/834059</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/834059</guid><dc:creator><![CDATA[Sir_Steve]]></dc:creator><pubDate>Tue, 19 Jul 2005 07:17:06 GMT</pubDate></item><item><title><![CDATA[Reply to Nicht in WM_PAINT zeichnen on Tue, 19 Jul 2005 07:34:52 GMT]]></title><description><![CDATA[<p><a href="http://c-plusplus.net/forum/viewtopic.php?t=14713" rel="nofollow">http://c-plusplus.net/forum/viewtopic.php?t=14713</a></p>
<p>Das Anlegen des Memory-DCs kannst du dann z.B. bei WM_CREATE machen, freigeben bei WM_DESTORY (evtl. musst du noch irgendwie Größenänderungen des Fensters abfangen und dein Memory-DC ggf. vergrößern) - das BitBlt kommt dann in WM_PAINT <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/834075</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/834075</guid><dc:creator><![CDATA[flenders]]></dc:creator><pubDate>Tue, 19 Jul 2005 07:34:52 GMT</pubDate></item><item><title><![CDATA[Reply to Nicht in WM_PAINT zeichnen on Tue, 19 Jul 2005 09:19:27 GMT]]></title><description><![CDATA[<p>Also, ich habe das programmiert und es geht ... nur nicht richtig:<br />
Ich kann immer nur ein Viereck malen, beim zweiten löscht er das erste <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="😞"
    /><br />
Ich schicke mal meinen Quellcode (gekürzt):</p>
<pre><code class="language-cpp">LRESULT ...
{
    static HDC hdc, hdc2;
    switch(message)
    {
        case WM_PAINT:
        hdc = BeginPaint(hwnd, &amp;ps);
        hdc2 = CreateCompatibleDC(hdc);
        hBM = CreateCompatibleBitmap(hdc, 800, 600);
        SelectObject(hdc2, hBM);
        //PaintAnweisungen
        BitBlt(hdc, 0, 0, 800, 600, hdc2, 0, 0, SRCCOPY);
        EndPaint(hwnd, &amp;ps);
    }
}
</code></pre>
<p>???<br />
Grüße, Steve! <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/834167</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/834167</guid><dc:creator><![CDATA[Sir_Steve]]></dc:creator><pubDate>Tue, 19 Jul 2005 09:19:27 GMT</pubDate></item><item><title><![CDATA[Reply to Nicht in WM_PAINT zeichnen on Tue, 19 Jul 2005 09:28:00 GMT]]></title><description><![CDATA[<p>Du darfst den DC nicht jedes Mal in WM_PAINT neu erstellen, erstell den einmal in WM_CREATE, so dass Du in WM_PAINT nur noch die BitBlt-Funktionalität hast. So, wie es jetzt ist erstellst Du in WM_PAINT ständig einen neuen DC, der aber auch nicht gelöscht wird. Vorgehensweise sollte also sein:</p>
<pre><code>WM_CREATE:  -MemoryDC erstellen
WM_DESTROY: -MemoryDC zerstören
WM_PAINT:   -MemoryDC in FensterDC blitten
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/834184</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/834184</guid><dc:creator><![CDATA[mantiz]]></dc:creator><pubDate>Tue, 19 Jul 2005 09:28:00 GMT</pubDate></item></channel></rss>