<?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[Buttons und Message Handler]]></title><description><![CDATA[<p>Hi Forum,<br />
ich habe folgendes Problem: Ich habe in einem dialogfeld basierenden Projekt mehrere Buttons. Diese Buttons sollen alle ein und die gleich Methode OnClick bekommen. Das ist soweit klar wie es geht, aber meine Frage wäre: Wie kann ich in dieser OnClick feststellen von welchem Button sie gerufen wird ?</p>
<p>MfG<br />
Ranja</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/167395/buttons-und-message-handler</link><generator>RSS for Node</generator><lastBuildDate>Fri, 01 May 2026 14:59:31 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/167395.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 10 Dec 2006 17:51:05 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Buttons und Message Handler on Sun, 10 Dec 2006 17:51:05 GMT]]></title><description><![CDATA[<p>Hi Forum,<br />
ich habe folgendes Problem: Ich habe in einem dialogfeld basierenden Projekt mehrere Buttons. Diese Buttons sollen alle ein und die gleich Methode OnClick bekommen. Das ist soweit klar wie es geht, aber meine Frage wäre: Wie kann ich in dieser OnClick feststellen von welchem Button sie gerufen wird ?</p>
<p>MfG<br />
Ranja</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1189647</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1189647</guid><dc:creator><![CDATA[Ranja]]></dc:creator><pubDate>Sun, 10 Dec 2006 17:51:05 GMT</pubDate></item><item><title><![CDATA[Reply to Buttons und Message Handler on Sun, 10 Dec 2006 18:08:19 GMT]]></title><description><![CDATA[<p>Evtl. mit <a href="http://msdn.microsoft.com/library/en-us/vclib/html/_mfc_cwnd.3a3a.getdlgctrlid.asp" rel="nofollow">GetDlgCtrlID</a> ?!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1189661</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1189661</guid><dc:creator><![CDATA[CodeFinder]]></dc:creator><pubDate>Sun, 10 Dec 2006 18:08:19 GMT</pubDate></item><item><title><![CDATA[Reply to Buttons und Message Handler on Sun, 10 Dec 2006 18:18:30 GMT]]></title><description><![CDATA[<p>Habe es mal wie folgt getestet, aber es kommt immer nur WUFF in der AfxMessageBox und habe natürlich in der MessageMap, das but0Clicked auf IDC_BUTTON3 gelegt.</p>
<pre><code>void CMühleDlg::but0Clicked()
{
      if(this-&gt;GetDlgCtrlID() == IDC_BUTTON3)
	{
		AfxMessageBox(_T(&quot;MIAU&quot;));
	}
	else
	{
		AfxMessageBox(_T(&quot;WUFF&quot;));	
	}
}
</code></pre>
<p>Also vermute ich mal das es nicht des Rätsels Lösung war <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>Kommt man vielleicht schon irgendwie in die Methode die die Nachrichten abfängt, weil in der MessageMap steht ja sowas wie</p>
<pre><code>BEGIN_MESSAGE_MAP(CMühleDlg, CDialog)
	ON_WM_SYSCOMMAND()
	ON_WM_PAINT()
	ON_WM_QUERYDRAGICON()
	//}}AFX_MSG_MAP
	ON_BN_CLICKED(IDC_BUTTON3, &amp;CMühleDlg::but0Clicked)
</code></pre>
<p>Dahin wird ja das IDC übergeben, komme ich da vielleicht irgendwie dran, weil das Ding muss ja irgendwie nen Switch Case besitzen wonach es die jeweiligen Methoden ruft ?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1189673</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1189673</guid><dc:creator><![CDATA[Ranja]]></dc:creator><pubDate>Sun, 10 Dec 2006 18:18:30 GMT</pubDate></item><item><title><![CDATA[Reply to Buttons und Message Handler on Sun, 10 Dec 2006 18:43:33 GMT]]></title><description><![CDATA[<p>Ich habe das Problem gelöst <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 />
Du hattest doch gar nicht so unrecht. Ich habe mir einfach den Focus geholt<br />
Das is nun meine Funktion</p>
<pre><code>void CMühleDlg::but0Clicked()
{
      CWnd* pwndCtrl = GetFocus();
	int ctrl_ID = pwndCtrl-&gt;GetDlgCtrlID();

	switch (ctrl_ID) 
	{
	case IDC_BUTTON3:
		AfxMessageBox(_T(&quot;But0&quot;));
	break;

	case IDC_BUTTON4:
		AfxMessageBox(_T(&quot;But1&quot;));
	break;

	default:
	break;
	}
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1189699</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1189699</guid><dc:creator><![CDATA[Ranja]]></dc:creator><pubDate>Sun, 10 Dec 2006 18:43:33 GMT</pubDate></item><item><title><![CDATA[Reply to Buttons und Message Handler on Mon, 11 Dec 2006 08:08:20 GMT]]></title><description><![CDATA[<p>Wenn die Buttons aufeinanderfolgende IDs haben, kannst du den Messge-Handler auch per ON_COMMAND_RANGE für den gesamten Block zuweisen (der bekommt dann die getroffene ID direkt mitgegeben).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1189902</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1189902</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Mon, 11 Dec 2006 08:08:20 GMT</pubDate></item><item><title><![CDATA[Reply to Buttons und Message Handler on Mon, 11 Dec 2006 08:40:23 GMT]]></title><description><![CDATA[<p>Das habe ich gestern Abend noch erledigt <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/1189915</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1189915</guid><dc:creator><![CDATA[Ranja]]></dc:creator><pubDate>Mon, 11 Dec 2006 08:40:23 GMT</pubDate></item><item><title><![CDATA[Reply to Buttons und Message Handler on Mon, 11 Dec 2006 09:37:09 GMT]]></title><description><![CDATA[<p>Oder man verwendet ON_COMMAND_EX!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1189939</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1189939</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Mon, 11 Dec 2006 09:37:09 GMT</pubDate></item></channel></rss>