<?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[Koordinaten vom Fenster]]></title><description><![CDATA[<p>Wie bekomme ich raus wie hoch bei meiner Anwendung die Titelleiste und die Menüleiste ist. Ich arbeite mit Visual Studio 6.0 und die Menüleiste wurde mit dem Resourceneditor erzeugt. Wenn ich meine Mausevents abfange und mit &quot;ClientToScreen&quot; auf die Fensterkoordinaten umrechne, bekomme ich immer nur die Koordinaten relative zur linken oberen Ecke, jedoch nicht von der Clientarea sondern vom äußersten Rand meines Programmfensters, welche Lösungsmöglichleiten würdet ihr mir vorschlagen? Beim Verkleinern meines Programms wird die Menüzeile auch mehrspalltig, was ja die die Clientarea auch wieder beeinflusst.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/145715/koordinaten-vom-fenster</link><generator>RSS for Node</generator><lastBuildDate>Thu, 16 Jul 2026 04:45:16 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/145715.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 30 Apr 2006 14:56:51 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Koordinaten vom Fenster on Sun, 30 Apr 2006 14:56:51 GMT]]></title><description><![CDATA[<p>Wie bekomme ich raus wie hoch bei meiner Anwendung die Titelleiste und die Menüleiste ist. Ich arbeite mit Visual Studio 6.0 und die Menüleiste wurde mit dem Resourceneditor erzeugt. Wenn ich meine Mausevents abfange und mit &quot;ClientToScreen&quot; auf die Fensterkoordinaten umrechne, bekomme ich immer nur die Koordinaten relative zur linken oberen Ecke, jedoch nicht von der Clientarea sondern vom äußersten Rand meines Programmfensters, welche Lösungsmöglichleiten würdet ihr mir vorschlagen? Beim Verkleinern meines Programms wird die Menüzeile auch mehrspalltig, was ja die die Clientarea auch wieder beeinflusst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1048429</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1048429</guid><dc:creator><![CDATA[henzer f.]]></dc:creator><pubDate>Sun, 30 Apr 2006 14:56:51 GMT</pubDate></item><item><title><![CDATA[Reply to Koordinaten vom Fenster on Sun, 30 Apr 2006 15:41:21 GMT]]></title><description><![CDATA[<p>Ich verstehe Deine Frage nicht ganz. Für was brauchst Du die Höhe und Position des Menüs?<br />
Wenn Du Mausnachrichten (also keine NC Nachrichten) in einem Fenster bekommst, dann sind diese immer relative zur Client Area.<br />
Die Höhe einer Titelleiste bekommst Du z.B. GetSystemMetrics, auch die Höhe eines Menüs einzeiligen Menüs (SM_CYCAPTION, SM_CYMENU, SM_CYFRAME). Wenn Du also GetWindowRect besorgst. GetCleintRect mit ClientToScrenn in Bildschirm Koordinaten umrechnest, dann die Caption und die Framestärke abrechnest bleibt das Menü übrig.</p>
<p>Wie ich schon fragte: Warum benötigst Du das?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1048473</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1048473</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Sun, 30 Apr 2006 15:41:21 GMT</pubDate></item><item><title><![CDATA[Reply to Koordinaten vom Fenster on Mon, 01 May 2006 06:22:17 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich hab mir mit der Anleitung hier:</p>
<p>[url]<br />
<a href="http://www.catch22.net/tuts/splitter.asp" rel="nofollow">http://www.catch22.net/tuts/splitter.asp</a><br />
[/url]</p>
<p>einen Splitter für meine Clientwindows gebastelt. Das Teil funktioniert soweit ich keine Größenänderung vornehme die die Menpüleiste mehrspaltig macht. Das liegt wohl an dem Befehl GetWindowDC, aber welche Alternative habe ich da?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1048701</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1048701</guid><dc:creator><![CDATA[henzer f.]]></dc:creator><pubDate>Mon, 01 May 2006 06:22:17 GMT</pubDate></item><item><title><![CDATA[Reply to Koordinaten vom Fenster on Mon, 01 May 2006 07:08:12 GMT]]></title><description><![CDATA[<p>Achja GetDC kann ich nicht verwenden, da ich mein Hauptfenster mit dem WS_CLIPCHILDREN Style erzeugt habe, um das Flackern der Fenster bei der Größenänderung des Programmfensters zu reduzieren.Folglich wird die Splitterlinie dann nicht über die Clientarea gemalt, sondern nur über die schmalen Splaten zwischen den Fernstern. Würde ich WS_CLIPCHILDREN beim Hauptfenster weglassen, würde GetDC und das Malen der Splitterlinie einwandfrei funktioniern, aber das Flackern bei Größenänderung wäre unzumutbar.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1048707</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1048707</guid><dc:creator><![CDATA[henzer f.]]></dc:creator><pubDate>Mon, 01 May 2006 07:08:12 GMT</pubDate></item><item><title><![CDATA[Reply to Koordinaten vom Fenster on Mon, 01 May 2006 07:18:38 GMT]]></title><description><![CDATA[<p>henzer f. schrieb:</p>
<blockquote>
<p>Achja GetDC kann ich nicht verwenden, da ich mein Hauptfenster mit dem WS_CLIPCHILDREN Style erzeugt habe, um das Flackern der Fenster bei der Größenänderung des Programmfensters zu reduzieren.Folglich wird die Splitterlinie dann nicht über die Clientarea gemalt, sondern nur über die schmalen Splaten zwischen den Fernstern. Würde ich WS_CLIPCHILDREN beim Hauptfenster weglassen, würde GetDC und das Malen der Splitterlinie einwandfrei funktioniern, aber das Flackern bei Größenänderung wäre unzumutbar.</p>
</blockquote>
<p>Nein! IMHO hat das eher damit zu tun, wie Du due Client Area löscht. Evtl. wird diese mehrfach gezeichnet. Dein SplitterWindow sollte nicht die Clientbereiche übermalen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1048711</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1048711</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Mon, 01 May 2006 07:18:38 GMT</pubDate></item><item><title><![CDATA[Reply to Koordinaten vom Fenster on Mon, 01 May 2006 07:30:24 GMT]]></title><description><![CDATA[<p>Ähm das verstehe ich jetz nicht? Das Flackern kommt unabhängig von der Splitterfunktion, eine Größenänderunf des Hauptfensters läßt die Clientfewnster flackern, wenn ich WS_CLIPCHILDREN nicht benutze.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1048715</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1048715</guid><dc:creator><![CDATA[henzer f.]]></dc:creator><pubDate>Mon, 01 May 2006 07:30:24 GMT</pubDate></item><item><title><![CDATA[Reply to Koordinaten vom Fenster on Mon, 01 May 2006 09:09:26 GMT]]></title><description><![CDATA[<p>Ich verstehe Dein Problem nicht:<br />
Mainframe enthält das Splitter Fenster, das Splitter Fenster enthaölt jeweils einen Dialog mit Child Controls.</p>
<p>Die Fensterhierarchie ist also:<br />
MainFrame<br />
Splitter<br />
Dialog<br />
Childcontrols</p>
<p>Nur das Dialog Fenster muss WS_CLIPCHILDREN haben, denn es geht nur um dessen Kinder! Das Mainframe kann bleiben wie es ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1048763</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1048763</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Mon, 01 May 2006 09:09:26 GMT</pubDate></item><item><title><![CDATA[Reply to Koordinaten vom Fenster on Mon, 01 May 2006 10:05:24 GMT]]></title><description><![CDATA[<p>Das mit der Fensterhirarchie wie du sie beschreibst, hab ich so jetzt nicht verstanden. Bei mir sieht die Hirarchie so aus:</p>
<p>Hauptfenster<br />
2xChildfenster<br />
Bitmap als Splitter (ist aber kein Fenster?)</p>
<p>Naja, ich hab mein Problem jetzt eigentlich fast gelöst, ich habe mir das Hauptfenster mit einzeiligem Menü ausgemessen und den Wert y=40 erhalten, den ich nun als Korrekturwert verwenden kann, wenn das Menü mehrzeilig wird. Aber ich denke mal das diese Größenangabe nicht auf jeden Rechner zutrifft, also werde ich wohl deinen Vorschlag mit GetSystemMetrics realisiern müssen um die entsprechenden Werte zu erhalten, richtig? Wenn ich jetzt das Hauptfentser betrachte, mit was fange ich da an zu berücksichtigen und wie heissen die Sachen in MS Sprache? Z.B der Rahmen ums Hauptfenster? Ok Menü müsste = SM_CYMENU sein, kann man das irgendwo auch auf deutsch nachlesen was die Sachen bedeuten. Also bei MSDN steht z.B. SM_CYCAPTION = &quot;Height, in pixels, of a normal caption area.&quot; Leider weiß ich halt nicht was eine &quot;normal caption area&quot; ist, und wo die sich im Programmfenster befindet.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1048788</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1048788</guid><dc:creator><![CDATA[henzer f.]]></dc:creator><pubDate>Mon, 01 May 2006 10:05:24 GMT</pubDate></item></channel></rss>