<?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[Dynamische Steuerelemente]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich bin dabei MFC zu erlernen und stehe vor einem Problem.<br />
Ich habe ein SDI-(CFormView-) Anwendung mit ein paar Seuerelementen dynamisch erstellt.<br />
Beim Anklicken auf die Buttons soll eine einfache Meldung erscheinen, die zeigt welchen Button gerade angeklickt wurde.</p>
<p>Über das Makro ON_COMMAND_RANGE(...) habe ich den ID-Bereich festgelegt:</p>
<pre><code class="language-cpp">ON_COMMAND_RANGE(ID_FIRST_BUTTON, ID_LAST_BUTTON, OnButtonMessage)
</code></pre>
<p>Mein Handler schaut folgender Maßen aus:</p>
<pre><code class="language-cpp">void OnButtonMessage(UINT nID)
{
	int nButton = nID - ID_FIRST_BUTTON; 
	switch (nButton)
	{
	case 0:
		AfxMessageBox(_T(&quot;First button selected&quot;));
		break;
	case 1:
		AfxMessageBox(_T(&quot;Second button selected&quot;));
		break;
         .........
	default:
		// Not handled
		break;
	}    	
}
</code></pre>
<p>Der Compiler zeigt mir zwar keinen Fehler, aber es wird beim Anklicken auf die Buttons keine Meldung ausgegeben.<br />
Hat jemand hat eine Idee, wo der Fehler sein könnte?<br />
Danke im Voraus</p>
<p>Die</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/174858/dynamische-steuerelemente</link><generator>RSS for Node</generator><lastBuildDate>Sat, 25 Apr 2026 06:34:56 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/174858.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 04 Mar 2007 17:00:19 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Dynamische Steuerelemente on Sun, 04 Mar 2007 17:00:19 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich bin dabei MFC zu erlernen und stehe vor einem Problem.<br />
Ich habe ein SDI-(CFormView-) Anwendung mit ein paar Seuerelementen dynamisch erstellt.<br />
Beim Anklicken auf die Buttons soll eine einfache Meldung erscheinen, die zeigt welchen Button gerade angeklickt wurde.</p>
<p>Über das Makro ON_COMMAND_RANGE(...) habe ich den ID-Bereich festgelegt:</p>
<pre><code class="language-cpp">ON_COMMAND_RANGE(ID_FIRST_BUTTON, ID_LAST_BUTTON, OnButtonMessage)
</code></pre>
<p>Mein Handler schaut folgender Maßen aus:</p>
<pre><code class="language-cpp">void OnButtonMessage(UINT nID)
{
	int nButton = nID - ID_FIRST_BUTTON; 
	switch (nButton)
	{
	case 0:
		AfxMessageBox(_T(&quot;First button selected&quot;));
		break;
	case 1:
		AfxMessageBox(_T(&quot;Second button selected&quot;));
		break;
         .........
	default:
		// Not handled
		break;
	}    	
}
</code></pre>
<p>Der Compiler zeigt mir zwar keinen Fehler, aber es wird beim Anklicken auf die Buttons keine Meldung ausgegeben.<br />
Hat jemand hat eine Idee, wo der Fehler sein könnte?<br />
Danke im Voraus</p>
<p>Die</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1239076</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1239076</guid><dc:creator><![CDATA[DynSunc]]></dc:creator><pubDate>Sun, 04 Mar 2007 17:00:19 GMT</pubDate></item><item><title><![CDATA[Reply to Dynamische Steuerelemente on Mon, 05 Mar 2007 07:44:25 GMT]]></title><description><![CDATA[<p>Fehlt vieleicht ON_CONTROL_REFLECT in deiner Buttonklasse?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1239326</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1239326</guid><dc:creator><![CDATA[connan]]></dc:creator><pubDate>Mon, 05 Mar 2007 07:44:25 GMT</pubDate></item><item><title><![CDATA[Reply to Dynamische Steuerelemente on Mon, 05 Mar 2007 09:33:48 GMT]]></title><description><![CDATA[<p>Wird OnButtonMessage angesprungen?<br />
Ist ID_FIRST_BUTTON und ID_LAST_BUTTON wirklich korrekt definiert (ID_FIRST_BUTTON&lt;ID_LAST_BUTTON).</p>
<p>Ich verwende lieber ON_COMMAND_EX! Dabei wird für jeden Button (sofern es wirklich nicht zu viele sind ein Eintrag in der Message-Map angelegt.</p>
<p>Der Handler sieht dann so aus:<br />
BOOL CMyClass::OnButtonMessage(UINT nID)<br />
{<br />
...<br />
}</p>
<p>BTW: Dein Handler heißt void OnButtonMessage(UINT nID), d.h. hier sehe ich keinen Klassennamen. Ist das Dein Problem?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1239372</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1239372</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Mon, 05 Mar 2007 09:33:48 GMT</pubDate></item></channel></rss>