<?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[Primitives CBitmap-Problem, das mich zur tiefsten Verzweiflung bringt :-(]]></title><description><![CDATA[<p><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="😞"
    /> FAQ und selbst die Such-Funktion konnten mich nicht aus meiner verzweifelten Situation befreien.</p>
<p>Stets dachte ich, mit folgendem Code kopiert man einen Fensterinhalt in ein CBitmap-Objekt</p>
<pre><code class="language-cpp">CBitmap bitmap;             // Definiert im Header

//~~~~~ Kopierfunktion - Anfang ~~~~~
CWindowDC dc(this);
bitmap.CreateCompatibleBitmap(&amp;dc, Fensterbreite, Fensterhöhe);
//~~~~~ Kopierfunktion - Ende ~~~~~
</code></pre>
<p>Zuallererst klappte dies hervorragend. Das Bild des Fensters befand sich tatsächlich als Bitmap wieder.<br />
Stutzig wurde ich aber, als ich das Programm neu kompilierte und im CBitmap-Objekt auf einmal nicht der Inhalt des derzeitigen Fensters, sondern der vom vorigen Programm-Ablauf (vor dem Kompilieren!!!) zu sehen war.<br />
Noch stutziger wurde ich, als sich beim Programmschluss alle Icons des VC++-Programms in hyroglypisch-artige nichtssagende Zeichen verwandelten. Ich konnte nur noch erraten, was welcher SpeedButton für eine Bedeutung hatte!</p>
<p>Ist euch das auch schon mal passiert? - Ich glaube nicht und hoffe, es ist nur ein primitiver Fehler...</p>
<p>Könnt ihr mir sagen, wie man den Fensterinhalt tatsächlich in ein CBitmap-Objekt kopiert? Ich würde mich freuen!</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/48513/primitives-cbitmap-problem-das-mich-zur-tiefsten-verzweiflung-bringt</link><generator>RSS for Node</generator><lastBuildDate>Wed, 29 Apr 2026 15:27:39 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/48513.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 09 Sep 2003 18:10:56 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Primitives CBitmap-Problem, das mich zur tiefsten Verzweiflung bringt :-( on Tue, 09 Sep 2003 18:10:56 GMT]]></title><description><![CDATA[<p><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="😞"
    /> FAQ und selbst die Such-Funktion konnten mich nicht aus meiner verzweifelten Situation befreien.</p>
<p>Stets dachte ich, mit folgendem Code kopiert man einen Fensterinhalt in ein CBitmap-Objekt</p>
<pre><code class="language-cpp">CBitmap bitmap;             // Definiert im Header

//~~~~~ Kopierfunktion - Anfang ~~~~~
CWindowDC dc(this);
bitmap.CreateCompatibleBitmap(&amp;dc, Fensterbreite, Fensterhöhe);
//~~~~~ Kopierfunktion - Ende ~~~~~
</code></pre>
<p>Zuallererst klappte dies hervorragend. Das Bild des Fensters befand sich tatsächlich als Bitmap wieder.<br />
Stutzig wurde ich aber, als ich das Programm neu kompilierte und im CBitmap-Objekt auf einmal nicht der Inhalt des derzeitigen Fensters, sondern der vom vorigen Programm-Ablauf (vor dem Kompilieren!!!) zu sehen war.<br />
Noch stutziger wurde ich, als sich beim Programmschluss alle Icons des VC++-Programms in hyroglypisch-artige nichtssagende Zeichen verwandelten. Ich konnte nur noch erraten, was welcher SpeedButton für eine Bedeutung hatte!</p>
<p>Ist euch das auch schon mal passiert? - Ich glaube nicht und hoffe, es ist nur ein primitiver Fehler...</p>
<p>Könnt ihr mir sagen, wie man den Fensterinhalt tatsächlich in ein CBitmap-Objekt kopiert? Ich würde mich freuen!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/350436</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/350436</guid><dc:creator><![CDATA[PrimitiverProgrammierer]]></dc:creator><pubDate>Tue, 09 Sep 2003 18:10:56 GMT</pubDate></item><item><title><![CDATA[Reply to Primitives CBitmap-Problem, das mich zur tiefsten Verzweiflung bringt :-( on Wed, 10 Sep 2003 02:16:18 GMT]]></title><description><![CDATA[<p>Du musst noch ein DC erstellen (via CDC:CreateCompatibleDC) und dort das Bitmap reinselektieren.<br />
Dann mit BitBlt kopieren.</p>
<pre><code class="language-cpp">void CTestDlg::OnOK()
{
	CDC* dc = GetDC();

	CDC memDC;
	memDC.CreateCompatibleDC(dc);

	CBitmap bitmap;
	bitmap.CreateCompatibleBitmap(dc,100,100);

	CBitmap* oldBitmap = memDC.SelectObject(&amp;bitmap);

	memDC.BitBlt(0,0,100,100,dc,0,0,SRCCOPY);
	// Nun kopiert

	memDC.SelectObject(oldBitmap); // Altes Bitmap wieder selektieren
	ReleaseDC(dc);
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/350548</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/350548</guid><dc:creator><![CDATA[Oliver]]></dc:creator><pubDate>Wed, 10 Sep 2003 02:16:18 GMT</pubDate></item><item><title><![CDATA[Reply to Primitives CBitmap-Problem, das mich zur tiefsten Verzweiflung bringt :-( on Wed, 10 Sep 2003 15:23:11 GMT]]></title><description><![CDATA[<p><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="🙂"
    /> Endlich kann ich wieder lachen!</p>
<p>Danke für den Code...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/351000</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/351000</guid><dc:creator><![CDATA[PrimitiverProgrammierer]]></dc:creator><pubDate>Wed, 10 Sep 2003 15:23:11 GMT</pubDate></item></channel></rss>