<?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 auf Static aktualisieren]]></title><description><![CDATA[<p>Guten Tag,<br />
ich möchte um mein Bitmao so einen schönen rahmen haben (WS_EX_CLIENTEDGE und WS_BORDER)<br />
also Hab ich ein Static mit den Styles ausgestattet und in<br />
dieses Static mein Bitmap angezeigt undzwar folgendermaßen:</p>
<pre><code class="language-cpp">case WM_CREATE:
		hStatic1 = CreateWindowEx(WS_EX_CLIENTEDGE,&quot;static&quot;,&quot;\n\nBild konnte nicht geladen werden&quot;,WS_VISIBLE | WS_CHILD | WS_BORDER | SS_CENTER, 
          50,10,346,86,hwnd,(HMENU) 1000, hInstGlb,NULL);

		hBitmap = (HBITMAP) LoadImage(hInstGlb,&quot;c:\\MeInE_DaTeI.bmp&quot;,IMAGE_BITMAP,340,80,LR_LOADFROMFILE);
		GetObject(hBitmap, sizeof(BITMAP), &amp;Bitmap);
		break;

	case WM_PAINT:
		hdc = BeginPaint(hStatic1, &amp;ps);
		hdcMem = CreateCompatibleDC(hdc);
		hBSO = (HBITMAP) SelectObject(hdcMem, hBitmap);
		BitBlt(hdc,0,0,Bitmap.bmWidth,Bitmap.bmHeight,hdcMem,0,0,SRCCOPY);
		SelectObject(hdcMem, hBSO);
		DeleteDC(hdcMem);
		EndPaint(hStatic1, &amp;ps);
		break;
</code></pre>
<p>jetzt hab ich ganz geschickt versucht das Bild zu Verändern:</p>
<pre><code class="language-cpp">case WM_COMMAND:
		switch (HIWORD(wParam))
		{
			case BN_CLICKED:
				switch (LOWORD(wParam))
				{
					case IDButton1:  // server

						hBitmap = (HBITMAP) LoadImage(hInstGlb,&quot;c:\\NoCh_EiN_bIlD.bmp&quot;,IMAGE_BITMAP,340,80,LR_LOADFROMFILE);
						GetObject(hBitmap, sizeof(BITMAP), &amp;Bitmap);

						break;
                          [...]
</code></pre>
<p>Geht auch aber erst wenn ich das Fenster minimier und dann wieder sichtbar mache.</p>
<p>Dann hab ich mir gedacht versuch ich's doch mal mit InvalidateRect() geht aber nicht.<br />
(Nur wenn ich bei WM_PAINT bei BeginPaint() hwnd angebe und nicht hStatic1.)<br />
Könnte ich natürlich machen dann müsste ich aber den Rahmen mit in das Bitmap malen. (Möchte ich aber nicht so gern..)</p>
<p>Hat einer ne Idee wie ich es schaffe, dass sich das Bild nach dem drücken des Buttons sofort ändert und nicht erst nach minimieren?</p>
<p>Vielen Dank im Voraus<br />
MfG Mario</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/63483/bitmap-auf-static-aktualisieren</link><generator>RSS for Node</generator><lastBuildDate>Tue, 07 Apr 2026 06:43:38 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/63483.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 02 Feb 2004 12:15:05 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Bitmap auf Static aktualisieren on Mon, 02 Feb 2004 12:15:05 GMT]]></title><description><![CDATA[<p>Guten Tag,<br />
ich möchte um mein Bitmao so einen schönen rahmen haben (WS_EX_CLIENTEDGE und WS_BORDER)<br />
also Hab ich ein Static mit den Styles ausgestattet und in<br />
dieses Static mein Bitmap angezeigt undzwar folgendermaßen:</p>
<pre><code class="language-cpp">case WM_CREATE:
		hStatic1 = CreateWindowEx(WS_EX_CLIENTEDGE,&quot;static&quot;,&quot;\n\nBild konnte nicht geladen werden&quot;,WS_VISIBLE | WS_CHILD | WS_BORDER | SS_CENTER, 
          50,10,346,86,hwnd,(HMENU) 1000, hInstGlb,NULL);

		hBitmap = (HBITMAP) LoadImage(hInstGlb,&quot;c:\\MeInE_DaTeI.bmp&quot;,IMAGE_BITMAP,340,80,LR_LOADFROMFILE);
		GetObject(hBitmap, sizeof(BITMAP), &amp;Bitmap);
		break;

	case WM_PAINT:
		hdc = BeginPaint(hStatic1, &amp;ps);
		hdcMem = CreateCompatibleDC(hdc);
		hBSO = (HBITMAP) SelectObject(hdcMem, hBitmap);
		BitBlt(hdc,0,0,Bitmap.bmWidth,Bitmap.bmHeight,hdcMem,0,0,SRCCOPY);
		SelectObject(hdcMem, hBSO);
		DeleteDC(hdcMem);
		EndPaint(hStatic1, &amp;ps);
		break;
</code></pre>
<p>jetzt hab ich ganz geschickt versucht das Bild zu Verändern:</p>
<pre><code class="language-cpp">case WM_COMMAND:
		switch (HIWORD(wParam))
		{
			case BN_CLICKED:
				switch (LOWORD(wParam))
				{
					case IDButton1:  // server

						hBitmap = (HBITMAP) LoadImage(hInstGlb,&quot;c:\\NoCh_EiN_bIlD.bmp&quot;,IMAGE_BITMAP,340,80,LR_LOADFROMFILE);
						GetObject(hBitmap, sizeof(BITMAP), &amp;Bitmap);

						break;
                          [...]
</code></pre>
<p>Geht auch aber erst wenn ich das Fenster minimier und dann wieder sichtbar mache.</p>
<p>Dann hab ich mir gedacht versuch ich's doch mal mit InvalidateRect() geht aber nicht.<br />
(Nur wenn ich bei WM_PAINT bei BeginPaint() hwnd angebe und nicht hStatic1.)<br />
Könnte ich natürlich machen dann müsste ich aber den Rahmen mit in das Bitmap malen. (Möchte ich aber nicht so gern..)</p>
<p>Hat einer ne Idee wie ich es schaffe, dass sich das Bild nach dem drücken des Buttons sofort ändert und nicht erst nach minimieren?</p>
<p>Vielen Dank im Voraus<br />
MfG Mario</p>
]]></description><link>https://www.c-plusplus.net/forum/post/449543</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/449543</guid><dc:creator><![CDATA[M-ario]]></dc:creator><pubDate>Mon, 02 Feb 2004 12:15:05 GMT</pubDate></item><item><title><![CDATA[Reply to Bitmap auf Static aktualisieren on Mon, 02 Feb 2004 13:58:00 GMT]]></title><description><![CDATA[<p>Also ich habs jetzt geschaft...</p>
<p>Interessiert niemanden aber:</p>
<p>Stichwort Subclassing.. (selbiges hab ich mit meinem Static gemacht und dann reagiere ich dort auf die WM_PAINT..)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/449632</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/449632</guid><dc:creator><![CDATA[M-ario]]></dc:creator><pubDate>Mon, 02 Feb 2004 13:58:00 GMT</pubDate></item></channel></rss>