<?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[Nachricht von ComboboxEx]]></title><description><![CDATA[<p>hi</p>
<p>ich verwende in einem WTL-Projekt die ComboBoxEx - also die erweiterte ComboBox-Variante. Ich verwende dazu einen Dialog.<br />
Nun will ich natürlich darauf reagieren, ob der Benutzer einen Eintrag auswählt, oder etwas ins Editfeld schreibt.<br />
Dafür gibt es das Notify Event : CBN_SELCHANGE</p>
<p>Die Nachricht kommt jedoch nie in WM_NOTIFY an.</p>
<p>Nur CBEN_ENDEDIT kommt an. Jedoch nicht wenn man etwas auswählt, oder nachdem man etwas eingegeben hat, sondern immer erst dann wenn das Edit den Fokus verliert.</p>
<p>Was muss man da machen?</p>
<p>thx</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/186079/nachricht-von-comboboxex</link><generator>RSS for Node</generator><lastBuildDate>Sun, 05 Jul 2026 11:01:29 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/186079.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 04 Jul 2007 18:52:29 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Nachricht von ComboboxEx on Wed, 04 Jul 2007 18:52:29 GMT]]></title><description><![CDATA[<p>hi</p>
<p>ich verwende in einem WTL-Projekt die ComboBoxEx - also die erweiterte ComboBox-Variante. Ich verwende dazu einen Dialog.<br />
Nun will ich natürlich darauf reagieren, ob der Benutzer einen Eintrag auswählt, oder etwas ins Editfeld schreibt.<br />
Dafür gibt es das Notify Event : CBN_SELCHANGE</p>
<p>Die Nachricht kommt jedoch nie in WM_NOTIFY an.</p>
<p>Nur CBEN_ENDEDIT kommt an. Jedoch nicht wenn man etwas auswählt, oder nachdem man etwas eingegeben hat, sondern immer erst dann wenn das Edit den Fokus verliert.</p>
<p>Was muss man da machen?</p>
<p>thx</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1318477</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1318477</guid><dc:creator><![CDATA[Dezipaitor]]></dc:creator><pubDate>Wed, 04 Jul 2007 18:52:29 GMT</pubDate></item><item><title><![CDATA[Reply to Nachricht von ComboboxEx on Wed, 04 Jul 2007 19:03:24 GMT]]></title><description><![CDATA[<p>Die CBN_SELCHANGE kommt über die WM_COMMAND :p</p>
<p>Und für dich könnten CBN_EDITUPDATE und CBN_EDITCHANGE interessant sein, kommen auch über die WM_COMMAND <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>
<p>Verwirrt mich aber auch regelmäßig, &quot;CBN&quot; sieht schließlich stark nach Combobox-<strong>Notify</strong> aus...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1318481</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1318481</guid><dc:creator><![CDATA[Badestrand]]></dc:creator><pubDate>Wed, 04 Jul 2007 19:03:24 GMT</pubDate></item><item><title><![CDATA[Reply to Nachricht von ComboboxEx on Wed, 04 Jul 2007 21:26:32 GMT]]></title><description><![CDATA[<p>baah THX</p>
<p>die ComboBoxEx Kommandos werden über WM_Notify gesendet, der Rest über WM_COMMAND - ich hab da wohl was falsches angenommen.</p>
<p>Leider isses so, dass die Enter-Taste nicht als Eingabe-Ende angenommen wird. Ich vermute es liegt am Dialogmanager.</p>
<p>ich habe so die WndProc der ComboBox umgebogen, um so auf den Dialogmanager reagieren zu können. Also die Entertaste abzufangen und so darauf reagieren zu können.<br />
Leider funktioniert es nicht. Irgendwelche Fehler?</p>
<pre><code class="language-cpp">LRESULT CALLBACK m_LocalAddressComboBox_WindowProc(  HWND hwnd,  UINT uMsg,   WPARAM wParam,  LPARAM lParam)
	{
		if (uMsg == WM_KEYDOWN)
			//wParam == VK_RETURN)
			MessageBox(hwnd,_T(&quot;123&quot;),_T(&quot;123&quot;),0);

		LONG oldWnd = (LONG)GetWindowLong(hwnd,GWL_USERDATA);
		LRESULT lres = CallWindowProc((WNDPROC)oldWnd, hwnd, uMsg, wParam, lParam);
		if ((uMsg == WM_GETDLGCODE) &amp;&amp; lParam &amp;&amp;
		    ((MSG *)lParam)-&gt;message == WM_KEYDOWN &amp;&amp;
			((MSG *)lParam)-&gt;wParam == VK_RETURN) 
				lres |= DLGC_WANTMESSAGE;

		return lres;
	}

...oninitdialog

LONG oldWnd = (LONG)m_LocalAddressComboBox.GetWindowLong(GWL_WNDPROC);
		m_LocalAddressComboBox.SetWindowLong(GWL_USERDATA, (LONG)oldWnd);
		m_LocalAddressComboBox.SetWindowLong(GWL_WNDPROC, (LONG)&amp;m_LocalAddressComboBox_WindowProc);
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1318561</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1318561</guid><dc:creator><![CDATA[Dezipaitor]]></dc:creator><pubDate>Wed, 04 Jul 2007 21:26:32 GMT</pubDate></item></channel></rss>