<?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[Fenster nach verschieben an Ort und Stelle halten]]></title><description><![CDATA[<p>Hallo Leute, <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f60b.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_savoring_food"
      title=":yum:"
      alt="😋"
    /></p>
<p>ich hab mit SetWindowPos in der MainFrame.cpp die Grösse meines Fensters geändert.<br />
In SetWindowPos muss ich aber auch die Koordinaten meines Fensters angeben.<br />
Die hat zur Folge dass wenn mein Fenster verschoben wird und dann über New(Im Menue)die Grösse geändert wird das Fenster wieder an die Koordinaten springt welche in SetWindowPos angegeben wurden. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /><br />
Bin nätürlich gleich auf WM_Move gestossen, klappt aber auch nicht in dieser Funktion:( . Gibt es irgend ne Möglichkeit die Koordinaten meines Fensters nach dem verschieben auszulesen und sie in SetWindowpos neu zu setzen sodass das Fenster nach der Grössenänderung an der Stelle bleibt an die es verschoben wurde ? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
<p>Danke für eure Hilfe<br />
<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="😉"
    /><br />
ShadowEater</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/175096/fenster-nach-verschieben-an-ort-und-stelle-halten</link><generator>RSS for Node</generator><lastBuildDate>Fri, 24 Apr 2026 23:43:36 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/175096.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 07 Mar 2007 08:50:02 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Fenster nach verschieben an Ort und Stelle halten on Wed, 07 Mar 2007 08:50:02 GMT]]></title><description><![CDATA[<p>Hallo Leute, <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f60b.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_savoring_food"
      title=":yum:"
      alt="😋"
    /></p>
<p>ich hab mit SetWindowPos in der MainFrame.cpp die Grösse meines Fensters geändert.<br />
In SetWindowPos muss ich aber auch die Koordinaten meines Fensters angeben.<br />
Die hat zur Folge dass wenn mein Fenster verschoben wird und dann über New(Im Menue)die Grösse geändert wird das Fenster wieder an die Koordinaten springt welche in SetWindowPos angegeben wurden. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /><br />
Bin nätürlich gleich auf WM_Move gestossen, klappt aber auch nicht in dieser Funktion:( . Gibt es irgend ne Möglichkeit die Koordinaten meines Fensters nach dem verschieben auszulesen und sie in SetWindowpos neu zu setzen sodass das Fenster nach der Grössenänderung an der Stelle bleibt an die es verschoben wurde ? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
<p>Danke für eure Hilfe<br />
<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="😉"
    /><br />
ShadowEater</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1240753</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1240753</guid><dc:creator><![CDATA[ShadowEater]]></dc:creator><pubDate>Wed, 07 Mar 2007 08:50:02 GMT</pubDate></item><item><title><![CDATA[Reply to Fenster nach verschieben an Ort und Stelle halten on Wed, 07 Mar 2007 08:59:48 GMT]]></title><description><![CDATA[<p>Ja, gibt es - die entsprechende Funktion nennt sich GetWindowPlacement() oder GetWindowRect().</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1240759</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1240759</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Wed, 07 Mar 2007 08:59:48 GMT</pubDate></item><item><title><![CDATA[Reply to Fenster nach verschieben an Ort und Stelle halten on Wed, 07 Mar 2007 09:02:21 GMT]]></title><description><![CDATA[<p>Mach dir ein CRect oder CPoint als Member. Initial steckst du die gewünschte Fensterposition rein.<br />
Und nach dem Bewegen holst du dir da rein die Koordinaten mit GetWindowRect und merkst die da drin. (Kann sein, dass du noch mit ClientToScreen umrechnen musst, das teste ich immer einfach erstmal.)</p>
<p>Dadurch springt er danach nicht mehr, weil er immer die letzte obere linke Ecke weiß.</p>
<p>(Ich hoffe, ich hab dich richtig verstanden.)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1240760</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1240760</guid><dc:creator><![CDATA[estartu]]></dc:creator><pubDate>Wed, 07 Mar 2007 09:02:21 GMT</pubDate></item><item><title><![CDATA[Reply to Fenster nach verschieben an Ort und Stelle halten on Wed, 07 Mar 2007 10:19:35 GMT]]></title><description><![CDATA[<p>Hi ;),</p>
<p>hab mir ein CRect Objekt gemacht un mit GetWindowRect die Koordinaten geholt.</p>
<pre><code class="language-cpp">void CAaaaaaaaaaaView::OnFileNew() 
{
	CRect rc;
	GetWindowRect (&amp;rc);
	CMainFrame *pFrame = (CMainFrame*)AfxGetMainWnd();

	pFrame-&gt;SetWindowPos (&amp;CWnd::wndTop, rc.left, rc.top, 200, 400 ,SWP_NOREPOSITION);

}
</code></pre>
<p>Kann jetzt das Fenster verschieben, beim ausführen wird es auch nicht mehr zurückgesetzt !<br />
Aber jedesmal wenn ich OnFileNew()ausführe wird das Fenster einigev Pixel weiter nach unten versetzt.<br />
In BOOL CMainFrame::PreCreateWindow(CREATESTRUCT&amp; cs) hab ich natürlich nichts angegeben !<br />
Gibts da irgend nen Windows Automatismus den ich noch deaktivieren muss ?</p>
<p>regards<br />
ShadowEater</p>
<p>P.S: Hi estartu, ja, Du hasts vollkommen erfasst <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>
]]></description><link>https://www.c-plusplus.net/forum/post/1240810</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1240810</guid><dc:creator><![CDATA[ShadowEater]]></dc:creator><pubDate>Wed, 07 Mar 2007 10:19:35 GMT</pubDate></item><item><title><![CDATA[Reply to Fenster nach verschieben an Ort und Stelle halten on Wed, 07 Mar 2007 10:47:13 GMT]]></title><description><![CDATA[<p>Wie estartu schon sagte:</p>
<p>estartu schrieb:</p>
<blockquote>
<p>(Kann sein, dass du noch mit ClientToScreen umrechnen musst, das teste ich immer einfach erstmal.)</p>
</blockquote>
]]></description><link>https://www.c-plusplus.net/forum/post/1240830</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1240830</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Wed, 07 Mar 2007 10:47:13 GMT</pubDate></item><item><title><![CDATA[Reply to Fenster nach verschieben an Ort und Stelle halten on Thu, 08 Mar 2007 16:16:30 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>bei Benutzung von ClienttoScreen springt das Fenster noch mehr als ohne !<br />
Hier mal mein Code:</p>
<pre><code class="language-cpp">void CTestView::OnFileNew() 
{
	CMainFrame *pFrame = (CMainFrame*)AfxGetMainWnd();

	CRect rc;
	GetWindowRect (&amp;rc);
	// ClientToScreen (&amp;rc);

	pFrame-&gt;SetWindowPos (&amp;CWnd::wndTop, rc.left, rc.top, 200, 400 ,SWP_NOREPOSITION);

}
</code></pre>
<p><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="😉"
    /><br />
ShadowEater</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1241764</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1241764</guid><dc:creator><![CDATA[ShadowEater]]></dc:creator><pubDate>Thu, 08 Mar 2007 16:16:30 GMT</pubDate></item><item><title><![CDATA[Reply to Fenster nach verschieben an Ort und Stelle halten on Thu, 08 Mar 2007 16:46:13 GMT]]></title><description><![CDATA[<p>Habs nochmal so probiert :</p>
<pre><code class="language-cpp">void CAaaaaaaaaaaView::OnFileNew() 
{	
	CRect rc;
	GetWindowRect (&amp;rc);
	CMainFrame *pFrame = (CMainFrame*)AfxGetMainWnd();

	CClientDC dc(this);
	dc.SetMapMode (MM_ANISOTROPIC);
	dc.LPtoDP (&amp;rc);

	pFrame-&gt;SetWindowPos (&amp;CWnd::wndTop, rc.left, rc.top, 200, 100 ,SWP_NOREPOSITION);

}
</code></pre>
<p>funzt aber auch net !<br />
<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 />
Shadoweater</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1241782</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1241782</guid><dc:creator><![CDATA[ShadowEater]]></dc:creator><pubDate>Thu, 08 Mar 2007 16:46:13 GMT</pubDate></item><item><title><![CDATA[Reply to Fenster nach verschieben an Ort und Stelle halten on Thu, 08 Mar 2007 18:29:13 GMT]]></title><description><![CDATA[<p>AAAAAAAAAHHHHHRRGGGGGGGGGGHHHHHHHHHHHHHHHH!!!!!!!!!!!!!!!!</p>
<p>SWP_NOMOVE<br />
Retains the current position (ignores X and Y parameters).</p>
<p>Falls es noch jemand interessiert !</p>
<p><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="😉"
    /><br />
ShadowEater</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1241856</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1241856</guid><dc:creator><![CDATA[ShadowEater]]></dc:creator><pubDate>Thu, 08 Mar 2007 18:29:13 GMT</pubDate></item></channel></rss>