<?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[hwnd = CreateWindowEx - hwnd == const ?]]></title><description><![CDATA[<p>Hallo !<br />
Bleibt das hwnd, das mir CreateWindowEx immer gleich ?<br />
Oder kann es vorkommen, das es sich im Programmverlauf ändert ?</p>
<p>thx</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/210267/hwnd-createwindowex-hwnd-const</link><generator>RSS for Node</generator><lastBuildDate>Wed, 22 Apr 2026 02:52:51 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/210267.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 09 Apr 2008 08:46:35 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to hwnd = CreateWindowEx - hwnd == const ? on Wed, 09 Apr 2008 08:46:35 GMT]]></title><description><![CDATA[<p>Hallo !<br />
Bleibt das hwnd, das mir CreateWindowEx immer gleich ?<br />
Oder kann es vorkommen, das es sich im Programmverlauf ändert ?</p>
<p>thx</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1488905</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1488905</guid><dc:creator><![CDATA[WinApi NooB]]></dc:creator><pubDate>Wed, 09 Apr 2008 08:46:35 GMT</pubDate></item><item><title><![CDATA[Reply to hwnd = CreateWindowEx - hwnd == const ? on Wed, 09 Apr 2008 08:56:59 GMT]]></title><description><![CDATA[<p>Solange Du kein <em>DestroyWindow()</em> (oder auch exotischer <em>CloseHandle()</em> usw.) aufrufst, ändert sich Dein hwnd nicht.</p>
<p>Bei einem <em>CloseWindow()</em> ändert sich das hwnd auch nicht, da das Fenster zwar geschlossen (also unsichtbar) wird, aber immer noch im System (Speicher) angelegt ist.</p>
<p>Martin</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1488917</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1488917</guid><dc:creator><![CDATA[Mmacher]]></dc:creator><pubDate>Wed, 09 Apr 2008 08:56:59 GMT</pubDate></item><item><title><![CDATA[Reply to hwnd = CreateWindowEx - hwnd == const ? on Wed, 09 Apr 2008 09:50:49 GMT]]></title><description><![CDATA[<p>dann nehme ich jetzt einfach mal an, das es mit hdc = GetDC(hwnd) auch so ist, also das hdc konstant bleibt.</p>
<p>ich sehe nämlich in vielen beispielen, das für die anzeige von bitmaps die hdc's bei jedem betreten der anzeigefunktion immer wieder neu erzeugt und mit ReleaseDC und DeleteDC zerstört werden.<br />
meiner meinung nach ist das völlig unnötig, solange die hdc's sich nicht ändern.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1488944</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1488944</guid><dc:creator><![CDATA[WinApi NooB]]></dc:creator><pubDate>Wed, 09 Apr 2008 09:50:49 GMT</pubDate></item><item><title><![CDATA[Reply to hwnd = CreateWindowEx - hwnd == const ? on Wed, 09 Apr 2008 10:14:51 GMT]]></title><description><![CDATA[<p>WinApi NooB schrieb:</p>
<blockquote>
<p>meiner meinung nach ist das völlig unnötig, solange die hdc's sich nicht ändern.</p>
</blockquote>
<p>Mit dem hdc ist es etwas anderes als hwnd.</p>
<p>hdc kann sich sehr wohl im Laufe des Programms ändern. Z.B. Du änderst in den Systemeinstellungen die Hintergrundfarbe des Fensters oder die Schriftarten, während Dein Programm parallel dazu läuft. Oder änderst die Szeneneinstellungen.</p>
<p>Bei hdc kann ich Dir eine grobe Faustformel empfehlen (natürlich gibts auch da Ausnahmen, aber lassen wir die mal außen vor):<br />
Viele Windows-Nachrichten (z.B. <em>WM_PAINT</em>) liefern Dir das hdc in LPARAM/WPARAM oder in der Struktur mit. D.h. nutze möglichst nur diesen hdc um in das Fenster zu zeichnen.</p>
<p>Wenn Du aber ein Bitmap bearbeiten willst (z.B. Manipulation mit <em>BitBlt()</em>), brauchst Du meistens einen separaten hdc den Dir z.B. <em>CreateCompatibleDC()</em> liefert.</p>
<p>Martin</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1488957</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1488957</guid><dc:creator><![CDATA[Mmacher]]></dc:creator><pubDate>Wed, 09 Apr 2008 10:14:51 GMT</pubDate></item><item><title><![CDATA[Reply to hwnd = CreateWindowEx - hwnd == const ? on Wed, 09 Apr 2008 10:24:49 GMT]]></title><description><![CDATA[<p>ja, das mit dem separaten hdc habe ich jetzt auch rausgefunden. aber das mit der änderung ist natürlich gut zu wissen, daran habe ich so noch gar nicht gedacht.<br />
ich erstelle eine bitmap, die so groß wie die auflösung des bildschirms ist.<br />
also z.b. 800x600<br />
ändert der benutzer die einstellung auf z.b. 1024x768 dann sollte das programm darauf reagieren, indem eine neue bitmap erstellt wird.</p>
<p>dann muss ich also in WndProc den status vom fenster hdc checken.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1488962</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1488962</guid><dc:creator><![CDATA[WinApi NooB]]></dc:creator><pubDate>Wed, 09 Apr 2008 10:24:49 GMT</pubDate></item><item><title><![CDATA[Reply to hwnd = CreateWindowEx - hwnd == const ? on Wed, 09 Apr 2008 10:35:13 GMT]]></title><description><![CDATA[<p>Wenn ein User die Bildschirmauflösung ändert, bekommt Deine Messageschleife bzw. Dein WndProc() die Nachricht <em>WM_DISPLAYCHANGE</em>.<br />
D.h. bei Größenänderungen brauchst Du nur diese Nachricht zu verarbeiten, um dann Dein Bitmap neu zu berechnen.</p>
<p>Weitere Nachrichten ähnlicher Art sind:<br />
<em>WM_SETTINGCHANGE<br />
WM_WININICHANGE<br />
WM_SYSCOLORCHANGE<br />
WM_THEMECHANGED</em></p>
<p>Nutze die MSDN wenn Du mehr darüber wissen möchtest.<br />
Martin</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1488969</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1488969</guid><dc:creator><![CDATA[Mmacher]]></dc:creator><pubDate>Wed, 09 Apr 2008 10:35:13 GMT</pubDate></item><item><title><![CDATA[Reply to hwnd = CreateWindowEx - hwnd == const ? on Wed, 09 Apr 2008 10:36:54 GMT]]></title><description><![CDATA[<p>Mmacher schrieb:</p>
<blockquote>
<p>Wenn ein User die Bildschirmauflösung ändert, bekommt Deine Messageschleife bzw. Dein WndProc() die Nachricht <em>WM_DISPLAYCHANGE</em>.<br />
D.h. bei Größenänderungen brauchst Du nur diese Nachricht zu verarbeiten, um dann Dein Bitmap neu zu berechnen.</p>
<p>Weitere Nachrichten ähnlicher Art sind:<br />
<em>WM_SETTINGCHANGE<br />
WM_WININICHANGE<br />
WM_SYSCOLORCHANGE<br />
WM_THEMECHANGED</em></p>
<p>Nutze die MSDN wenn Du mehr darüber wissen möchtest.<br />
Martin</p>
</blockquote>
<p>Superklasse !!! <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /><br />
Danke ! <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/1488971</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1488971</guid><dc:creator><![CDATA[WinApi NooB]]></dc:creator><pubDate>Wed, 09 Apr 2008 10:36:54 GMT</pubDate></item></channel></rss>