<?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[Transparentes Fenster verschieben!?]]></title><description><![CDATA[<p>Hi,</p>
<p>ich habe mir ein Fenster mit der HOLLOW_BRUSH erstellt, welches ich bei WM_MOUSEMOVE per SetWindowPos verschieben will. Nun habe ich aber immer Gestückel von den Fenstern darunter in meinem Fenster, es wird also nicht neu gezeichnet. Habe es schon mit InvalidateRect usw. nach jedem Verschieben versucht, klappt aber auch nicht.</p>
<p>Hat jemand eine Idee, wie ich solch ein verschiebbares, transparentes Fenster erstellen kann?</p>
<p>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="🙂"
    /><br />
Alex</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/157012/transparentes-fenster-verschieben</link><generator>RSS for Node</generator><lastBuildDate>Wed, 22 Jul 2026 16:20:10 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/157012.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 22 Aug 2006 13:42:16 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Transparentes Fenster verschieben!? on Tue, 22 Aug 2006 13:42:16 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>ich habe mir ein Fenster mit der HOLLOW_BRUSH erstellt, welches ich bei WM_MOUSEMOVE per SetWindowPos verschieben will. Nun habe ich aber immer Gestückel von den Fenstern darunter in meinem Fenster, es wird also nicht neu gezeichnet. Habe es schon mit InvalidateRect usw. nach jedem Verschieben versucht, klappt aber auch nicht.</p>
<p>Hat jemand eine Idee, wie ich solch ein verschiebbares, transparentes Fenster erstellen kann?</p>
<p>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="🙂"
    /><br />
Alex</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1122165</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1122165</guid><dc:creator><![CDATA[!!Alex!!]]></dc:creator><pubDate>Tue, 22 Aug 2006 13:42:16 GMT</pubDate></item><item><title><![CDATA[Reply to Transparentes Fenster verschieben!? on Tue, 22 Aug 2006 18:09:30 GMT]]></title><description><![CDATA[<p>!!Alex!! schrieb:</p>
<blockquote>
<p>Hat jemand eine Idee, wie ich solch ein verschiebbares, transparentes Fenster erstellen kann?</p>
</blockquote>
<p>Jo mit <a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/winui/windowsuserinterface/windowing/windows/windowreference/windowfunctions/setlayeredwindowattributes.asp" rel="nofollow">SetLayeredWindowAttributes(...)</a> und:</p>
<pre><code class="language-cpp">// in deiner WndProc:
// ...

   case WM_LBUTTONDOWN:
      SendMessage(hWnd, WM_NCLBUTTONDOWN, HTCAPTION, 0L);
      break;

// ...
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1122348</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1122348</guid><dc:creator><![CDATA[CodeFinder]]></dc:creator><pubDate>Tue, 22 Aug 2006 18:09:30 GMT</pubDate></item><item><title><![CDATA[Reply to Transparentes Fenster verschieben!? on Wed, 23 Aug 2006 09:22:59 GMT]]></title><description><![CDATA[<p>DANKE!!! <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="👍"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1122644</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1122644</guid><dc:creator><![CDATA[!!Alex!!]]></dc:creator><pubDate>Wed, 23 Aug 2006 09:22:59 GMT</pubDate></item><item><title><![CDATA[Reply to Transparentes Fenster verschieben!? on Wed, 23 Aug 2006 18:15:11 GMT]]></title><description><![CDATA[<p>Leider kennt der Kompiler die Funktion und den extendet style nicht.</p>
<p>Ich habe die Windows-Versionenmakros über dem Include alle auf über 0x0500 definiert. Woran kann das noch liegen?</p>
<p>Danke!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1123116</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1123116</guid><dc:creator><![CDATA[!!Alex!!]]></dc:creator><pubDate>Wed, 23 Aug 2006 18:15:11 GMT</pubDate></item><item><title><![CDATA[Reply to Transparentes Fenster verschieben!? on Wed, 23 Aug 2006 18:39:03 GMT]]></title><description><![CDATA[<p>Platform SDK ist auch drauf ? Und Include-Verzeichnis Reihenfolge richtig eingestellt ?</p>
<p>(btw. SetLayeredWindowAttributes() tut erst ab win2k, falls deine anwendung auch unter älteren windows-versionen noch rennen soll)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1123137</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1123137</guid><dc:creator><![CDATA[geeky]]></dc:creator><pubDate>Wed, 23 Aug 2006 18:39:03 GMT</pubDate></item><item><title><![CDATA[Reply to Transparentes Fenster verschieben!? on Wed, 23 Aug 2006 20:12:04 GMT]]></title><description><![CDATA[<p>Du musst dir die Funktionsadresse aus der DLL direkt laden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1123216</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1123216</guid><dc:creator><![CDATA[CodeFinder]]></dc:creator><pubDate>Wed, 23 Aug 2006 20:12:04 GMT</pubDate></item><item><title><![CDATA[Reply to Transparentes Fenster verschieben!? on Wed, 23 Aug 2006 22:37:36 GMT]]></title><description><![CDATA[<p>Hab grad noch was gefunden, das ich irg-wann mal geschrieben hab:</p>
<pre><code class="language-cpp">bool SetTransparentLevel(HWND hWnd, BYTE byLevel) // byLevel: 0 = unsichtbar, 255 = sichtbar
{ 
	BOOL (WINAPI *pSetLayeredWindowAttributes)(HWND hWnd, COLORREF crKey, BYTE byAlpha, DWORD dwFlags);
	HMODULE hmUser32 = GetModuleHandle(TEXT(&quot;USER32.DLL&quot;)); 
	if(hmUser32 == NULL)
		return (false);
	if(!(GetWindowLongPtr(hWnd, GWL_EXSTYLE) &amp; 0x00080000L))
		SetWindowLongPtr(hWnd, GWL_EXSTYLE, GetWindowLongPtr(hWnd, GWL_EXSTYLE) | 0x00080000L); 
	pSetLayeredWindowAttributes = reinterpret_cast&lt;BOOL (WINAPI *)(HWND hWnd, COLORREF crKey, BYTE byAlpha, DWORD dwFlags)&gt;(
		GetProcAddress(hmUser32, &quot;SetLayeredWindowAttributes&quot;));
	if(pSetLayeredWindowAttributes != NULL)
		if(pSetLayeredWindowAttributes(hWnd, NULL, byLevel, 0x00000002))
			return (true);
	return (false);
}
</code></pre>
<p>EDIT: Vertipper</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1123224</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1123224</guid><dc:creator><![CDATA[CodeFinder]]></dc:creator><pubDate>Wed, 23 Aug 2006 22:37:36 GMT</pubDate></item><item><title><![CDATA[Reply to Transparentes Fenster verschieben!? on Fri, 25 Aug 2006 08:40:57 GMT]]></title><description><![CDATA[<p>Danke.</p>
<p>Aber wenn die Funktion nur auf &gt;=Win2000 läuft, dann kann ich sie leider nicht verwenden.</p>
<p>Hat jemand eine Idee, wie man sich das auch auf älteren Systemen zusammenfrickeln kann? Ich brauche ja nur eine 100%ige Transparenz, das sollte doch machbar sein!?</p>
<p>Und das mit dem Neuzeichnen während des Verschiebens klappt leider auch nicht. Es wird also immer noch alles darunter gezeichnete &quot;übernommen&quot; bzw. Fetzen davon usw. Ich nutze jetzt übrigens die WM_NCLBUTTONDOWN-Methode von CodeFinder für's draggen. (Thx)</p>
<p>Gruß<br />
Alex</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1124292</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1124292</guid><dc:creator><![CDATA[!!Alex!!]]></dc:creator><pubDate>Fri, 25 Aug 2006 08:40:57 GMT</pubDate></item><item><title><![CDATA[Reply to Transparentes Fenster verschieben!? on Fri, 25 Aug 2006 14:50:46 GMT]]></title><description><![CDATA[<p>!!Alex!! schrieb:</p>
<blockquote>
<p>Danke.</p>
<p>Aber wenn die Funktion nur auf &gt;=Win2000 läuft, dann kann ich sie leider nicht verwenden.</p>
<p>Hat jemand eine Idee, wie man sich das auch auf älteren Systemen zusammenfrickeln kann?</p>
</blockquote>
<p>Jo schau mal hier: <a href="http://winapi.net/index.php?inhalt=s48" rel="nofollow">&lt; <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f4a1.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--light_bulb"
      title=":bulb:"
      alt="💡"
    /> &gt;</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1124515</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1124515</guid><dc:creator><![CDATA[CodeFinder]]></dc:creator><pubDate>Fri, 25 Aug 2006 14:50:46 GMT</pubDate></item></channel></rss>