<?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[[gelöst] Fenstergröße an Zeichenbereich anpassen]]></title><description><![CDATA[<p>Hi Leute!<br />
Ich versuche ein Fenster zu erzeugen, wo nicht die Gesamtgröße sondern die Größe des Zeichenbereichs entscheidend ist.<br />
Ich habe die Funktion AdjusWindowRect gefunden, aber die funtkioniert nicht. Zumindest nicht unter Vista.<br />
für 800x600 erhalte ich am Ende 792x572, ohne AWR: 784x564.<br />
Ich will aber auch nicht einfach 16x36 hinzuaddieren, weil das dann nur für Vista gilt.</p>
<p>Der WindowStyle ist WS_OVERLAPPEDWINDOW|WS_VISIBLE, es gibt kein Menü.</p>
<p>Mit der Funktion GetSystem Metrics müsste ich doch alle nötigen Werte berechnen können, aber welche brauch ich für was?</p>
<p>Kennt sich einer von Euch damit aus?<br />
Ich bräuchte eine Funktion die die Fenstergröße zuverlässig anpasst, egal welche Windows-Version (ab 2000).</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/238618/gelöst-fenstergröße-an-zeichenbereich-anpassen</link><generator>RSS for Node</generator><lastBuildDate>Mon, 06 Apr 2026 22:04:30 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/238618.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 13 Apr 2009 12:32:21 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to [gelöst] Fenstergröße an Zeichenbereich anpassen on Tue, 14 Apr 2009 09:40:49 GMT]]></title><description><![CDATA[<p>Hi Leute!<br />
Ich versuche ein Fenster zu erzeugen, wo nicht die Gesamtgröße sondern die Größe des Zeichenbereichs entscheidend ist.<br />
Ich habe die Funktion AdjusWindowRect gefunden, aber die funtkioniert nicht. Zumindest nicht unter Vista.<br />
für 800x600 erhalte ich am Ende 792x572, ohne AWR: 784x564.<br />
Ich will aber auch nicht einfach 16x36 hinzuaddieren, weil das dann nur für Vista gilt.</p>
<p>Der WindowStyle ist WS_OVERLAPPEDWINDOW|WS_VISIBLE, es gibt kein Menü.</p>
<p>Mit der Funktion GetSystem Metrics müsste ich doch alle nötigen Werte berechnen können, aber welche brauch ich für was?</p>
<p>Kennt sich einer von Euch damit aus?<br />
Ich bräuchte eine Funktion die die Fenstergröße zuverlässig anpasst, egal welche Windows-Version (ab 2000).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1695215</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1695215</guid><dc:creator><![CDATA[Blaze]]></dc:creator><pubDate>Tue, 14 Apr 2009 09:40:49 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] Fenstergröße an Zeichenbereich anpassen on Tue, 14 Apr 2009 09:41:12 GMT]]></title><description><![CDATA[<p>Könnt ihr bitte mal alle dieses Programm testen und sagen was es ausspuckt?<br />
Bitte auch euer OS angeben, damit ich weiß, dass es nicht nur unter Vista funktioniert.</p>
<pre><code class="language-cpp">//erledigt
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1695224</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1695224</guid><dc:creator><![CDATA[Blaze]]></dc:creator><pubDate>Tue, 14 Apr 2009 09:41:12 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] Fenstergröße an Zeichenbereich anpassen on Tue, 14 Apr 2009 04:12:00 GMT]]></title><description><![CDATA[<pre><code>800x578
</code></pre>
<p>Windows Xp Service Pack 3.</p>
<p>MFG</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1695453</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1695453</guid><dc:creator><![CDATA[Fatal Error appears]]></dc:creator><pubDate>Tue, 14 Apr 2009 04:12:00 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] Fenstergröße an Zeichenbereich anpassen on Tue, 14 Apr 2009 06:47:30 GMT]]></title><description><![CDATA[<p>Gut, könnten bitte noch mehr das Program testen.<br />
Ich werde AdjustStandardWindowRect aktualisieren, wenn ich etwas besseres gefunden habe.</p>
<p>Hat keiner sowas schonmal gemacht?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1695475</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1695475</guid><dc:creator><![CDATA[Blaze]]></dc:creator><pubDate>Tue, 14 Apr 2009 06:47:30 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] Fenstergröße an Zeichenbereich anpassen on Tue, 14 Apr 2009 08:23:11 GMT]]></title><description><![CDATA[<p>Durch AdjustWindowRect wird auch die Taskbar berücksictigt.<br />
Wenn Du schon GetSystemMetrics gefunden hast, dann schau Dir mal SM_CXFULLSCREEN und SM_CYFULLSCREEN an. Wie auch SystemParametersInfo mir SPI_GETWORKAREA.</p>
<p>BTW: Was ist das für ein UI Programm ohne WinMain?<br />
Evtl. solltest Du noch mal ein paar andere Basics über Windows Programmierung lesen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1695520</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1695520</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Tue, 14 Apr 2009 08:23:11 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] Fenstergröße an Zeichenbereich anpassen on Tue, 14 Apr 2009 09:40:34 GMT]]></title><description><![CDATA[<p>Problem gelöst!</p>
<pre><code class="language-cpp">void AdjustStandardWindowRect(HWND hWindow, RECT&amp; WindowSizeRect)
{
	//Außen- und Innenrahmen
	RECT WindowRect, ClientRect;

	//Erstmal klein zum testen
	MoveWindow(hWindow, 0, 0, 400, 300, FALSE);

	//Maße holen
	GetWindowRect(hWindow, &amp;WindowRect);
	GetClientRect(hWindow, &amp;ClientRect);

	//Größe anpassen
	WindowSizeRect.right += WindowRect.right - ClientRect.right;
	WindowSizeRect.bottom+= WindowRect.bottom - ClientRect.bottom;

	//Positin an Größe anpassen
	WindowSizeRect.left   = GetSystemMetrics(SM_CXSCREEN)/2 - WindowSizeRect.right /2;
	WindowSizeRect.top    = GetSystemMetrics(SM_CYSCREEN)/2 - WindowSizeRect.bottom/2;

	//Fenster neue Größe geben
	MoveWindow(hWindow, WindowSizeRect.left, WindowSizeRect.top,
		WindowSizeRect.right, WindowSizeRect.bottom, FALSE);
}
</code></pre>
<p>Also dieses Testprogramm war nur mal schnell aus nem anderen Programm kopiert, deshalb auch die schlechte Fehler-Behandlung.<br />
Darüber haben sich schon viele beschwert. Über Stil lässt sich streiten.</p>
<p>Im Original sieht das aber besser aus, Kommentare, Exceptions, Log, etc.</p>
<p>UI? Konsole, musste eben schnell gehen. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
<p>Zum Thema Basics über Windows Programmierung: habe Petzold gelesen</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1695558</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1695558</guid><dc:creator><![CDATA[Blaze]]></dc:creator><pubDate>Tue, 14 Apr 2009 09:40:34 GMT</pubDate></item></channel></rss>