<?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[Bitmap erzeugen]]></title><description><![CDATA[<p>Hallo!<br />
Ich versuche eine Bitmap aus einem Array zu erzeugen, doch so wie ich das vorhabe funktioniert es nicht.</p>
<pre><code class="language-cpp">static BYTE Pixel[6][5] = {0,255,0,255,0,0,		//Bitmap Daten
							   0,255,0,255,0,0,
							   0,255,0,255,0,0,
							   0,255,0,255,0,0,
							   0,255,0,255,0,0};

	static HBITMAP hBitmap;							
	static HDC hdcmem;							
	static HDC hdc;

                        hdc = GetDC (hwnd);

						hdcmem = CreateCompatibleDC (hdc);
						hBitmap = CreateBitmap (6,5,1,8,Pixel);
						SelectObject (hdcmem,hBitmap);

						BitBlt (hdc,200,100,5,5,hdcmem,0,0,SRCCOPY);

						DeleteObject (hBitmap);
						DeleteDC (hdcmem);
						ReleaseDC (hwnd,hdc);
</code></pre>
<p>Das Problem tritt Bei SelectObject auf, da hier eine 0 Zurückgegeben wird!</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/187776/bitmap-erzeugen</link><generator>RSS for Node</generator><lastBuildDate>Sat, 04 Jul 2026 11:19:00 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/187776.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 23 Jul 2007 23:15:53 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Bitmap erzeugen on Mon, 23 Jul 2007 23:27:38 GMT]]></title><description><![CDATA[<p>Hallo!<br />
Ich versuche eine Bitmap aus einem Array zu erzeugen, doch so wie ich das vorhabe funktioniert es nicht.</p>
<pre><code class="language-cpp">static BYTE Pixel[6][5] = {0,255,0,255,0,0,		//Bitmap Daten
							   0,255,0,255,0,0,
							   0,255,0,255,0,0,
							   0,255,0,255,0,0,
							   0,255,0,255,0,0};

	static HBITMAP hBitmap;							
	static HDC hdcmem;							
	static HDC hdc;

                        hdc = GetDC (hwnd);

						hdcmem = CreateCompatibleDC (hdc);
						hBitmap = CreateBitmap (6,5,1,8,Pixel);
						SelectObject (hdcmem,hBitmap);

						BitBlt (hdc,200,100,5,5,hdcmem,0,0,SRCCOPY);

						DeleteObject (hBitmap);
						DeleteDC (hdcmem);
						ReleaseDC (hwnd,hdc);
</code></pre>
<p>Das Problem tritt Bei SelectObject auf, da hier eine 0 Zurückgegeben wird!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1331192</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1331192</guid><dc:creator><![CDATA[.Johannes.]]></dc:creator><pubDate>Mon, 23 Jul 2007 23:27:38 GMT</pubDate></item><item><title><![CDATA[Reply to Bitmap erzeugen on Mon, 23 Jul 2007 23:50:52 GMT]]></title><description><![CDATA[<p>Ich habe einen Code gefunden, mit dem es nun Funktioniert:</p>
<pre><code class="language-cpp">hdc = GetDC (hwnd);

						hBitmap = CreateBitmap (100,100,1,32,Pixel);
						hdcmem = CreateCompatibleDC(NULL);
					    hBitmapPrev = (HBITMAP)SelectObject( hdcmem, hBitmap );

						BitBlt( hdc, 50, 50, 100, 100, hdcmem, 0, 0, SRCCOPY );

						SelectObject( hdcmem, hBitmapPrev );
						DeleteDC( hdcmem );
</code></pre>
<p>Kann mir denn mal jemand genau Erklären was die Funktionen CreateCompatibleDC und SelectObject machen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1331198</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1331198</guid><dc:creator><![CDATA[.Johannes.]]></dc:creator><pubDate>Mon, 23 Jul 2007 23:50:52 GMT</pubDate></item><item><title><![CDATA[Reply to Bitmap erzeugen on Tue, 24 Jul 2007 05:44:32 GMT]]></title><description><![CDATA[<p>Him</p>
<p>CreateCompatibleDC erzeugt dir einen DeviceContext im Speicher, unter dem dann mit SelectObject dein Bitmap ausgewählt wird. Dann kannst du ins Bitmap schreiben. Der DeviceContext gibt Informationen über z.B. über die verwendete Farbtiefe heraus.</p>
<p>BitBlt holt sich dann die Daten aus dem DC des Bitmaps und stellt das im aktuellen (Bildschirm-)DC dar</p>
<p>gruß<br />
Martin</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1331233</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1331233</guid><dc:creator><![CDATA[mad_martin]]></dc:creator><pubDate>Tue, 24 Jul 2007 05:44:32 GMT</pubDate></item><item><title><![CDATA[Reply to Bitmap erzeugen on Tue, 24 Jul 2007 10:58:57 GMT]]></title><description><![CDATA[<p>Das Problem ist, dass meine Bitmap bei dieser Methode immer 32Bit haben muss, bei anderen Bit-Werten wird nichts angezeigt.</p>
<p>Das zweite Problem ist, dass ich immer wieder CreateBitmap neu aufrufen muss, wenn ich etwas an dem &quot;Pixel&quot;-Array verändere, sonst bekomme ich nur die alten Daten angezeigt. ich nehme mal an, dass bei Createbitmap Speicher kopiert wird, was doch eigentlich die Geschwindigkeit meines Programms verlangsamen müsste.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1331418</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1331418</guid><dc:creator><![CDATA[.Johannes.]]></dc:creator><pubDate>Tue, 24 Jul 2007 10:58:57 GMT</pubDate></item></channel></rss>