<?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[GetClientRect brint die Werte (0,0,0,0)]]></title><description><![CDATA[<p>Hall,<br />
ich habe folgendes Problem.<br />
Ich habe meiner SDI-Anwendung eine 2. Ansicht vom Typ FormView (wie die Erste) hinzugefügt.<br />
Das Umschalten zwischen beiden Ansichten funktioniert.<br />
Aber:<br />
Der Aufruf der oben genannten Funktion in der 2. Ansicht (egal wo) wirft ein Rechteck mit den Werten (0,0,0,0) zurück!</p>
<pre><code>CRect rect;
	GetClientRect(&amp;rect);
         TRACE(&quot;%d   %d   %d   %d\n&quot;,rect.left,rect.right,rect.top,rect.bottom);
</code></pre>
<p>Kennt jemand dieses Phänomen?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/175908/getclientrect-brint-die-werte-0-0-0-0</link><generator>RSS for Node</generator><lastBuildDate>Fri, 24 Apr 2026 09:49:10 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/175908.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 15 Mar 2007 11:41:04 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to GetClientRect brint die Werte (0,0,0,0) on Thu, 15 Mar 2007 11:41:04 GMT]]></title><description><![CDATA[<p>Hall,<br />
ich habe folgendes Problem.<br />
Ich habe meiner SDI-Anwendung eine 2. Ansicht vom Typ FormView (wie die Erste) hinzugefügt.<br />
Das Umschalten zwischen beiden Ansichten funktioniert.<br />
Aber:<br />
Der Aufruf der oben genannten Funktion in der 2. Ansicht (egal wo) wirft ein Rechteck mit den Werten (0,0,0,0) zurück!</p>
<pre><code>CRect rect;
	GetClientRect(&amp;rect);
         TRACE(&quot;%d   %d   %d   %d\n&quot;,rect.left,rect.right,rect.top,rect.bottom);
</code></pre>
<p>Kennt jemand dieses Phänomen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1245985</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1245985</guid><dc:creator><![CDATA[ratmann]]></dc:creator><pubDate>Thu, 15 Mar 2007 11:41:04 GMT</pubDate></item><item><title><![CDATA[Reply to GetClientRect brint die Werte (0,0,0,0) on Thu, 15 Mar 2007 11:55:56 GMT]]></title><description><![CDATA[<p>Also bei mir kommt:<br />
0 1014 0 668<br />
Hast du meine Lösung aus der FAQ benutzt? (Damit sollte es wohl gehen.)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1245995</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1245995</guid><dc:creator><![CDATA[estartu]]></dc:creator><pubDate>Thu, 15 Mar 2007 11:55:56 GMT</pubDate></item><item><title><![CDATA[Reply to GetClientRect brint die Werte (0,0,0,0) on Thu, 15 Mar 2007 11:59:20 GMT]]></title><description><![CDATA[<p>also wenn ich GetClientRect aufrufe erwartet er als ersten parameter das fenster handle des clienten<br />
es kann sein das diese methode durch die MFC ueberladen ist</p>
<p>versuch es mal indem du explizit die api funktion aufrufst</p>
<p>::GetClientRect(m_WindowHandle, &amp;rect);</p>
<p>oder spiele mal mit GetWindowRect rum</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1245998</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1245998</guid><dc:creator><![CDATA[EXDW]]></dc:creator><pubDate>Thu, 15 Mar 2007 11:59:20 GMT</pubDate></item><item><title><![CDATA[Reply to GetClientRect brint die Werte (0,0,0,0) on Thu, 15 Mar 2007 12:12:01 GMT]]></title><description><![CDATA[<p>Mr Evil schrieb:</p>
<blockquote>
<p>also wenn ich GetClientRect aufrufe erwartet er als ersten parameter das fenster handle des clienten<br />
es kann sein das diese methode durch die MFC ueberladen ist</p>
</blockquote>
<p>Ist sie. <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 />
Wenn man sie in einer Viewklasse aufruft, wird genau dieser View genommen.</p>
<p>Ist also identisch mit:</p>
<pre><code class="language-cpp">CRect rect;
    ::GetClientRect(m_hWnd, &amp;rect);
    TRACE(&quot;%d   %d   %d   %d\n&quot;,rect.left,rect.right,rect.top,rect.bottom);
</code></pre>
<p>...auch vom TRACE her.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1246008</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1246008</guid><dc:creator><![CDATA[estartu]]></dc:creator><pubDate>Thu, 15 Mar 2007 12:12:01 GMT</pubDate></item><item><title><![CDATA[Reply to GetClientRect brint die Werte (0,0,0,0) on Thu, 15 Mar 2007 12:23:52 GMT]]></title><description><![CDATA[<p>Also der Aufruf der API bringt ebenfalls 4 mal die 0;</p>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/4897">@estartu</a><br />
Ich habe nicht deine Anleitung genommen! Aber die werde ich jetzt mal umsetzen</p>
<p>Danke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1246015</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1246015</guid><dc:creator><![CDATA[ratmann]]></dc:creator><pubDate>Thu, 15 Mar 2007 12:23:52 GMT</pubDate></item><item><title><![CDATA[Reply to GetClientRect brint die Werte (0,0,0,0) on Thu, 15 Mar 2007 14:27:47 GMT]]></title><description><![CDATA[<p>ratmann schrieb:</p>
<blockquote>
<p>Ich habe meiner SDI-Anwendung eine 2. Ansicht vom Typ FormView (wie die Erste) hinzugefügt.<br />
Das Umschalten zwischen beiden Ansichten funktioniert.</p>
</blockquote>
<p>Man kann keine zwei Ansichten einfach so in ein SDI Projekt einfügen. Das Frame kann immer nur einen View behandeln. Wenn müsstest Du ein CSplitterWnd einbauen!</p>
<p>Oder Du müsstest Tabs-verwenden (Also so was CPropertySheet) oder oder oder.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1246110</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1246110</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Thu, 15 Mar 2007 14:27:47 GMT</pubDate></item><item><title><![CDATA[Reply to GetClientRect brint die Werte (0,0,0,0) on Thu, 15 Mar 2007 14:34:15 GMT]]></title><description><![CDATA[<p>Oder einen totmachen und dann den anderen anzeigen, das mache ich. <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/1246115</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1246115</guid><dc:creator><![CDATA[estartu]]></dc:creator><pubDate>Thu, 15 Mar 2007 14:34:15 GMT</pubDate></item><item><title><![CDATA[Reply to GetClientRect brint die Werte (0,0,0,0) on Thu, 15 Mar 2007 17:24:34 GMT]]></title><description><![CDATA[<p>estartu schrieb:</p>
<blockquote>
<p>Oder einen totmachen und dann den anderen anzeigen, das mache ich. <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>
</blockquote>
<p>Oder den einen verstecken und die ID umändern AFX_FIRST_VIEW_IRGENDWAS.<br />
Das ganze wird in einem Sample &quot;Switch Views&quot; beschrieben!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1246224</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1246224</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Thu, 15 Mar 2007 17:24:34 GMT</pubDate></item><item><title><![CDATA[Reply to GetClientRect brint die Werte (0,0,0,0) on Thu, 15 Mar 2007 19:35:59 GMT]]></title><description><![CDATA[<p>Als ich verstehe nur Bahnhof!<br />
Ich habe doch eine zweite Ansicht, wie bei Kruglinski in Inside Visual C++ beschrieben eingefügt. (Ist bestimmt SwitchView)<br />
Der Code:</p>
<pre><code>void CMainFrame::SwitchToView(eView nView)
{
	CView* pOldActiveView = GetActiveView();
	CView* pNewActiveView = (CView*) GetDlgItem(nView);

	if (pNewActiveView == NULL) {
		switch (nView) {
		case ADMIN:
			pNewActiveView = (CView*) new CEnglsih_v2View;
			break;
		case QUESTION:
			pNewActiveView = (CView*) new CEnglish_v2QuestionView;
			break;
		}
		CCreateContext context;

		context.m_pCurrentDoc = pOldActiveView-&gt;GetDocument();

		pNewActiveView-&gt;Create(NULL, NULL, NULL,
			rectDefault, this, nView, &amp;context);

		pNewActiveView-&gt;OnInitialUpdate();
	}

	SetActiveView(pNewActiveView);
	pNewActiveView-&gt;ShowWindow(SW_SHOW);
	pOldActiveView-&gt;ShowWindow(SW_HIDE);
	pOldActiveView-&gt;SetDlgCtrlID(
		pOldActiveView-&gt;GetRuntimeClass() == 
		RUNTIME_CLASS(CEnglsih_v2View) ? ADMIN : QUESTION);
	pNewActiveView-&gt;SetDlgCtrlID(AFX_IDW_PANE_FIRST);
	RecalcLayout();
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1246295</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1246295</guid><dc:creator><![CDATA[ratmann]]></dc:creator><pubDate>Thu, 15 Mar 2007 19:35:59 GMT</pubDate></item><item><title><![CDATA[Reply to GetClientRect brint die Werte (0,0,0,0) on Fri, 16 Mar 2007 07:13:11 GMT]]></title><description><![CDATA[<p>Genau! Und nur der View mit der ID AFX_IDW_PANE_FIRST ist der View der sichtbar ist, der andere hat die Ausdehnung 0,0,0,0. Das ist normal!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1246438</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1246438</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Fri, 16 Mar 2007 07:13:11 GMT</pubDate></item></channel></rss>