<?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[zugriff auf StatusBar]]></title><description><![CDATA[<p>Heiho</p>
<p>mal ne frage {was sonst #gg}</p>
<p>wie komm ich in einer eigenen {implementieten} klasse an die statusbar ohne ein pointer zu uebergeben ?</p>
<p>danke {o;</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/164851/zugriff-auf-statusbar</link><generator>RSS for Node</generator><lastBuildDate>Fri, 31 Jul 2026 05:21:38 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/164851.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 13 Nov 2006 10:48:19 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to zugriff auf StatusBar on Mon, 13 Nov 2006 10:48:19 GMT]]></title><description><![CDATA[<p>Heiho</p>
<p>mal ne frage {was sonst #gg}</p>
<p>wie komm ich in einer eigenen {implementieten} klasse an die statusbar ohne ein pointer zu uebergeben ?</p>
<p>danke {o;</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1173495</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1173495</guid><dc:creator><![CDATA[EXDW]]></dc:creator><pubDate>Mon, 13 Nov 2006 10:48:19 GMT</pubDate></item><item><title><![CDATA[Reply to zugriff auf StatusBar on Mon, 13 Nov 2006 10:59:19 GMT]]></title><description><![CDATA[<p>Frag den Mainframe (AfxGetMainWnd) nach einem Zeiger. <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 />
Oder du sendest eine Nachricht, die der Mainframe verarbeitet und dann z.B. den Text setzt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1173505</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1173505</guid><dc:creator><![CDATA[estartu]]></dc:creator><pubDate>Mon, 13 Nov 2006 10:59:19 GMT</pubDate></item><item><title><![CDATA[Reply to zugriff auf StatusBar on Mon, 13 Nov 2006 11:01:24 GMT]]></title><description><![CDATA[<p>bekomm damit nix hin, weiss nie die passenden parameter #gg</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1173511</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1173511</guid><dc:creator><![CDATA[EXDW]]></dc:creator><pubDate>Mon, 13 Nov 2006 11:01:24 GMT</pubDate></item><item><title><![CDATA[Reply to zugriff auf StatusBar on Mon, 13 Nov 2006 11:27:49 GMT]]></title><description><![CDATA[<p>Okay, das geht mir ähnlich. Aber einen Weg habe ich:<br />
Irgendwo, wo alle beteiligten Klassen drankommen:</p>
<pre><code class="language-cpp">#define WM_UPDATE_TEXTE   (WM_USER+1)
</code></pre>
<p>MainFrm.h</p>
<pre><code class="language-cpp">afx_msg LRESULT OnUpdateTexte(WPARAM wParam, LPARAM pParam);
</code></pre>
<p>In MainFrm.cpp</p>
<pre><code class="language-cpp">//}}AFX_MSG_MAP
	ON_MESSAGE(WM_UPDATE_TEXTE, OnUpdateTexte)
END_MESSAGE_MAP()

// Ganz wichtig: das muss UNTER AFX_MSG_MAP und über END_MESSAGE_MAP, sonst hat der Assi ein Problem oder es klappt garnicht.
</code></pre>
<pre><code class="language-cpp">LRESULT CMainFrame::OnUpdateTexte(WPARAM wParam, LPARAM pParam)
{
	CBasisDoc* pDoc = (CBasisDoc*)(wParam);
	ASSERT(pDoc);
	if (pDoc)
	{
		// Titelzeile
		CString strTitelTeil1 = _T(&quot;Myprog - &quot;) + pDoc-&gt;GetTitelzeilentext();
		SetWindowText(strTitelTeil1);
	}

	return 0;
}
</code></pre>
<p>Im Basisdoc muss es dann natürlich die Funktion</p>
<pre><code class="language-cpp">CString GetTitelzeilentext()
</code></pre>
<p>geben.</p>
<p>Und aufgerufen wird das Ganze aus irgendeinem Doc (sind alle vom Basisdoc abgeleitet) so:</p>
<pre><code class="language-cpp">AfxGetMainWnd()-&gt;SendMessage(WM_UPDATE_TEXTE, (WPARAM)this);
</code></pre>
<p>Das selbe kannst du auch mit einem View oder einem Dialog machen. Musst es nur entsprechend anpassen.</p>
<p>Wie ich den Text so direkt mitschicken kann, habe ich noch nicht hinbekommen.<br />
Texte verschicken kann ich bisher nur mit WM_COPYDATA, aber das wäre hier eher fehl am Platz fürchte ich. <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="😞"
    /></p>
<p>Ich hoffe, du findest dich im Code zurecht. <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="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1173541</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1173541</guid><dc:creator><![CDATA[estartu]]></dc:creator><pubDate>Mon, 13 Nov 2006 11:27:49 GMT</pubDate></item><item><title><![CDATA[Reply to zugriff auf StatusBar on Mon, 13 Nov 2006 11:49:56 GMT]]></title><description><![CDATA[<p>// alles wegedit wegen doofheit</p>
<p>zwei mal der selbe fehler #gggg</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1173563</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1173563</guid><dc:creator><![CDATA[EXDW]]></dc:creator><pubDate>Mon, 13 Nov 2006 11:49:56 GMT</pubDate></item><item><title><![CDATA[Reply to zugriff auf StatusBar on Mon, 13 Nov 2006 11:52:43 GMT]]></title><description><![CDATA[<p><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>
]]></description><link>https://www.c-plusplus.net/forum/post/1173572</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1173572</guid><dc:creator><![CDATA[estartu]]></dc:creator><pubDate>Mon, 13 Nov 2006 11:52:43 GMT</pubDate></item><item><title><![CDATA[Reply to zugriff auf StatusBar on Mon, 13 Nov 2006 11:55:01 GMT]]></title><description><![CDATA[<p>ich hatte das problem das meine tooltips gar nicht funktionierten bis ich vergessen hatte das ich schon wieder {wie beim letzten projekt} das pretranslatemessage vergessen hatte #gg</p>
<p>versuch nu deinen vorschlag umzusetzen {=</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1173573</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1173573</guid><dc:creator><![CDATA[EXDW]]></dc:creator><pubDate>Mon, 13 Nov 2006 11:55:01 GMT</pubDate></item><item><title><![CDATA[Reply to zugriff auf StatusBar on Mon, 13 Nov 2006 11:57:30 GMT]]></title><description><![CDATA[<p>Aso <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
<p>Falls du unsere letzten beiden Diskussionen suchst, die sind jetzt in der FAQ.<br />
Über Tooltips gibts so wenig, da hab ich das mal archiviert. <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="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1173575</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1173575</guid><dc:creator><![CDATA[estartu]]></dc:creator><pubDate>Mon, 13 Nov 2006 11:57:30 GMT</pubDate></item><item><title><![CDATA[Reply to zugriff auf StatusBar on Mon, 13 Nov 2006 12:06:25 GMT]]></title><description><![CDATA[<p>jo hab ich schon gesehen {o;</p>
<p>ich frag mich gerade:</p>
<pre><code class="language-cpp">AfxGetMainWnd()-&gt;SendMessage(WM_UPDATE_TEXTE, (WPARAM)this);
</code></pre>
<p>bisher hab ich alles verstanden - was ich mich aber frag is, wie kann ich normalen cstring text senden ?</p>
<p>(WPARAM)csText ?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1173586</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1173586</guid><dc:creator><![CDATA[EXDW]]></dc:creator><pubDate>Mon, 13 Nov 2006 12:06:25 GMT</pubDate></item><item><title><![CDATA[Reply to zugriff auf StatusBar on Mon, 13 Nov 2006 12:24:09 GMT]]></title><description><![CDATA[<p>Tja, wie du oben schon lesen kannst: Das habe ich noch nicht hinbekommen. <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 />
Das einzige, wie ich es bisher hinbekommen habe ist das: <a href="http://www.codeproject.com/threads/ipc_wmcopy.asp" rel="nofollow">http://www.codeproject.com/threads/ipc_wmcopy.asp</a></p>
<p>Aber vielleicht geht es ja auch mit den Usermessages.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1173605</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1173605</guid><dc:creator><![CDATA[estartu]]></dc:creator><pubDate>Mon, 13 Nov 2006 12:24:09 GMT</pubDate></item><item><title><![CDATA[Reply to zugriff auf StatusBar on Mon, 13 Nov 2006 13:07:39 GMT]]></title><description><![CDATA[<p>ich hab das jetzt ohne send message geloest und zwar indem ich den pointer auf die statusbar einfach geholt hab</p>
<pre><code class="language-cpp">void COwnToolTips::OnTtnTooltipShow(NMHDR *pNMHDR, LRESULT *pResult)
{
	MoveWindow(60000, 60000, 60000, 60000);
	CMainFrame* pFrame = dynamic_cast&lt;CMainFrame*&gt;(AfxGetMainWnd());
	if(pFrame != NULL &amp;&amp; m_wnd != NULL)
	{
		CString csTip = _T(&quot;&quot;);
		GetText(csTip, m_wnd, pNMHDR-&gt;idFrom);
		pFrame-&gt;m_wndStatusBar.SetWindowText(csTip);
	}
}
</code></pre>
<p>was ich mich aber noch frag, ich muss den pointer auf die View klasse mitgeben</p>
<pre><code class="language-cpp">m_tooltip.SendPointerWnd(this);
</code></pre>
<p>auch bloed aber anders weiss ich nicht, da ich das Wnd der view brauch, und diese kann ich irgendwie nicht holen /=</p>
<p>auf jeden fall hab ich nu das ganze &quot;alte&quot; programm fertig auf das neue mit Doc/View portiert und kann es nun leben einhauchen {=</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1173663</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1173663</guid><dc:creator><![CDATA[EXDW]]></dc:creator><pubDate>Mon, 13 Nov 2006 13:07:39 GMT</pubDate></item><item><title><![CDATA[Reply to zugriff auf StatusBar on Mon, 13 Nov 2006 15:12:45 GMT]]></title><description><![CDATA[<p>Diese Methode mit der Casterei und dem bekanntmachen der CMainFrame Klasse ist unnötig. Die MFC implementirt die Nachricht WM_SETMESSAGESTRING. Diese ist in der TN024 ausgiebig beschrieben.</p>
<pre><code class="language-cpp">AfxGeMainWnd()-&gt;SendMessage(WM_SETMESSAGESTRING,NULL,static_cast&lt;LPCSTR&gt;(csTip));
</code></pre>
<p>Sollte es sofort tun!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1173750</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1173750</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Mon, 13 Nov 2006 15:12:45 GMT</pubDate></item><item><title><![CDATA[Reply to zugriff auf StatusBar on Mon, 13 Nov 2006 15:14:21 GMT]]></title><description><![CDATA[<p>WM_SETMESSAGESTRING kennt mein compiler gar nicht - casten tu ich doch auch nichts</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1173751</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1173751</guid><dc:creator><![CDATA[EXDW]]></dc:creator><pubDate>Mon, 13 Nov 2006 15:14:21 GMT</pubDate></item><item><title><![CDATA[Reply to zugriff auf StatusBar on Mon, 13 Nov 2006 19:04:03 GMT]]></title><description><![CDATA[<p>WM_SETMESSAGESTRING ist Bestandteil der MFC seit der Version 1.0!</p>
<p>Der cast ist notwendig weil ein LPCSTR Zeiger übergeben werden muss. IMHO fehlt sogar ein reinterpret_cast&lt;LPARAM&gt;.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1173942</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1173942</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Mon, 13 Nov 2006 19:04:03 GMT</pubDate></item><item><title><![CDATA[Reply to zugriff auf StatusBar on Tue, 14 Nov 2006 10:34:13 GMT]]></title><description><![CDATA[<p>Es ist in der MSDN aber echt schwer, rauszufinden, welchen Include man braucht.<br />
Ich hab es jetzt über Suchen in Dateien gefunden:</p>
<pre><code class="language-cpp">#include &quot;afxpriv.h&quot;
</code></pre>
<p>Leider bekomme ich jetzt</p>
<pre><code>error C2664: 'SendMessageA' : Konvertierung des Parameters 3 von 'const char *' in 'long' nicht moeglich
        Diese Konvertierung erfordert einen reinterpret_cast-Operator oder eine Typumwandlung im C- oder Funktionsformat
</code></pre>
<p>...ich glaube so weit war ich nach deinem ersten Hinweis auf WM_SETMESSAGESTRING schon mal und hatte die Versuche dann eingestellt. <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="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1174331</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1174331</guid><dc:creator><![CDATA[estartu]]></dc:creator><pubDate>Tue, 14 Nov 2006 10:34:13 GMT</pubDate></item><item><title><![CDATA[Reply to zugriff auf StatusBar on Tue, 14 Nov 2006 10:40:02 GMT]]></title><description><![CDATA[<p>Okay, jetzt habe ich den zweiten Post mal eingebunden:</p>
<pre><code class="language-cpp">AfxGetMainWnd()-&gt;SendMessage(WM_SETMESSAGESTRING,NULL,reinterpret_cast&lt;LPARAM&gt;(static_cast&lt;LPCSTR&gt;(strTip)));
</code></pre>
<p>Das compiliert, aber jetzt steht kein Text mehr in der Statuszeile. <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="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1174336</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1174336</guid><dc:creator><![CDATA[estartu]]></dc:creator><pubDate>Tue, 14 Nov 2006 10:40:02 GMT</pubDate></item><item><title><![CDATA[Reply to zugriff auf StatusBar on Tue, 14 Nov 2006 11:48:11 GMT]]></title><description><![CDATA[<p>Funktioniert bei mir perfekt.<br />
Aber Achtung: Die MFC erneuert die Statuszeile selbst oft genug mit dem Idle Text &quot;Bereit&quot;.<br />
Breakpoint setzen auf CFrameWnd::OnSetMessageString und kontrollieren wer der böse andere SendMessage Sender ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1174392</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1174392</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Tue, 14 Nov 2006 11:48:11 GMT</pubDate></item><item><title><![CDATA[Reply to zugriff auf StatusBar on Tue, 14 Nov 2006 13:05:21 GMT]]></title><description><![CDATA[<p>hei funzt bei mir tadellos {= nachdem ich diese uminoese header includiert hab - danke estartu</p>
<pre><code class="language-cpp">void COwnToolTips::OnTtnTooltipShow(NMHDR *pNMHDR, LRESULT *pResult)
{
	MoveWindow(60000, 60000, 60000, 60000);
	if(m_wnd != NULL)
	{
		CString csTip = _T(&quot;&quot;);
		GetText(csTip, m_wnd, pNMHDR-&gt;idFrom);
		AfxGetMainWnd()-&gt;SendMessage(WM_SETMESSAGESTRING,NULL,reinterpret_cast&lt;LPARAM&gt;(static_cast&lt;LPCSTR&gt;(csTip)));
	}
}
void COwnToolTips::OnTtnTooltipPop(NMHDR *pNMHDR, LRESULT *pResult)
{
	AfxGetMainWnd()-&gt;SendMessage(WM_SETMESSAGESTRING,NULL,reinterpret_cast&lt;LPARAM&gt;(static_cast&lt;LPCSTR&gt;(&quot;&quot;)));
}
void COwnToolTips::SendPointerWnd(CWnd *wnd)
{
	m_wnd = wnd;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1174465</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1174465</guid><dc:creator><![CDATA[EXDW]]></dc:creator><pubDate>Tue, 14 Nov 2006 13:05:21 GMT</pubDate></item><item><title><![CDATA[Reply to zugriff auf StatusBar on Tue, 14 Nov 2006 13:10:55 GMT]]></title><description><![CDATA[<p>Ich habe im Prinzip den gleichen Code aber bei mir geht es nicht.<br />
Ich müsste wohl noch das machen, was Martin zuletzt geschrieben hat, aber<br />
1.) Weiß ich nicht, woher eine Nachricht kommt, wenn ich im Handler bin (das Problem habe ich beim Debuggen allgemein noch nicht gelöst)<br />
2.) Funktioniert die andere Lösung mit der Zeigerübergabe und daher werde ich es wohl so lassen. Über eine Woche rumpuzzlen reicht mir langsam... <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1174477</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1174477</guid><dc:creator><![CDATA[estartu]]></dc:creator><pubDate>Tue, 14 Nov 2006 13:10:55 GMT</pubDate></item><item><title><![CDATA[Reply to zugriff auf StatusBar on Wed, 15 Nov 2006 07:20:31 GMT]]></title><description><![CDATA[<p>Der Callstack gibt Aufschluss woher die Nachricht gesendet wird. Die nachricht wird per SendMessage gesendet, Der Callstack müsste also den Aufrufer zeigen. Evtl. solltest Du die neuesten Debug Dateien für Dein OS herunterladen oder einen Symbolserver installieren, wenn der Callstack unvollständig ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1174877</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1174877</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Wed, 15 Nov 2006 07:20:31 GMT</pubDate></item></channel></rss>