<?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[Kleines Tool - Probleme mit Schaltflächen]]></title><description><![CDATA[<p>Hallo Leute,</p>
<p>ich versuche ein kleines Tool zu basteln, dass Daten aus einer Datei lesen soll und mir in einer Listbox anzeigen.<br />
Dazu habe ich bis jetzt 3 Schaltflächen verwendet. Für den Test, wollte ich, dass die Schaltfläche &quot;Speichern&quot; das kleine Programm beendet.<br />
Aber ich kann drücken so viel ich will.</p>
<pre><code class="language-cpp">#include &lt;windows.h&gt;
#include &lt;exception&gt;

#define ID_ladedaten 1001 // Button: Lade Daten aus Mikrokontroller
#define ID_speichern 1002 // Button: Speicher geladene Daten 
#define ID_listbox 1003 // Ausgabeliste fuer die IDs, die vom mC aufgezeichnet wurden
#define ID_about 1004 // Button: about 

bool Running = true;

LRESULT CALLBACK WindowProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
	switch(msg)
	{
	case WM_CREATE:
		{

			CreateWindowA(&quot;button&quot;, &quot;Daten Laden&quot;, WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON, 10, 10, 100, 40, hwnd, (HMENU)ID_ladedaten, ((LPCREATESTRUCT)lParam)-&gt;hInstance, NULL);
			CreateWindowA(&quot;button&quot;, &quot;Speichern&quot;, WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON, 120, 10, 100, 40, hwnd, (HMENU)ID_speichern, ((LPCREATESTRUCT)lParam)-&gt;hInstance, NULL);
			CreateWindowA(&quot;button&quot;, &quot;Projekt&quot;, WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON, 230, 10, 100, 40, hwnd, (HMENU)ID_about, ((LPCREATESTRUCT)lParam)-&gt;hInstance, NULL);
			CreateWindowA(&quot;listbox&quot;, NULL, WS_CHILD | WS_VISIBLE | LBS_STANDARD ^ LBS_SORT | LBS_HASSTRINGS, 10, 60, 300, 500, hwnd, (HMENU)ID_listbox, ((LPCREATESTRUCT)lParam)-&gt;hInstance, NULL); 

		}
	case WM_KEYDOWN:
		switch(wParam)
		{
		case VK_ESCAPE:
			SendMessage(hwnd, WM_CLOSE, 0, 0);
			break;
		}
		case WM_COMMAND:
		{
			if (lParam == (LPARAM)ID_speichern) // hwnd vom button
			{
				if (HIWORD(wParam) == BN_CLICKED) // id vom button
				SendMessage(hwnd, WM_CLOSE, 0, 0); // was der dabei machen soll, z.b. daten auslesen
			}
		}
		break;

	case WM_CLOSE:
		{
			DestroyWindow(hwnd);
			return TRUE;
		}
		break;

	case WM_DESTROY:
		{
			Running = false;
			PostQuitMessage(0);
			return 0;
		}
		break;
	}

	return DefWindowProc(hwnd, msg, wParam, lParam);
}
</code></pre>
<p>Sieht jemand meinen Fehler?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/176723/kleines-tool-probleme-mit-schaltflächen</link><generator>RSS for Node</generator><lastBuildDate>Sat, 11 Jul 2026 19:40:52 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/176723.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 24 Mar 2007 08:00:06 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Kleines Tool - Probleme mit Schaltflächen on Sat, 24 Mar 2007 08:00:41 GMT]]></title><description><![CDATA[<p>Hallo Leute,</p>
<p>ich versuche ein kleines Tool zu basteln, dass Daten aus einer Datei lesen soll und mir in einer Listbox anzeigen.<br />
Dazu habe ich bis jetzt 3 Schaltflächen verwendet. Für den Test, wollte ich, dass die Schaltfläche &quot;Speichern&quot; das kleine Programm beendet.<br />
Aber ich kann drücken so viel ich will.</p>
<pre><code class="language-cpp">#include &lt;windows.h&gt;
#include &lt;exception&gt;

#define ID_ladedaten 1001 // Button: Lade Daten aus Mikrokontroller
#define ID_speichern 1002 // Button: Speicher geladene Daten 
#define ID_listbox 1003 // Ausgabeliste fuer die IDs, die vom mC aufgezeichnet wurden
#define ID_about 1004 // Button: about 

bool Running = true;

LRESULT CALLBACK WindowProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
	switch(msg)
	{
	case WM_CREATE:
		{

			CreateWindowA(&quot;button&quot;, &quot;Daten Laden&quot;, WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON, 10, 10, 100, 40, hwnd, (HMENU)ID_ladedaten, ((LPCREATESTRUCT)lParam)-&gt;hInstance, NULL);
			CreateWindowA(&quot;button&quot;, &quot;Speichern&quot;, WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON, 120, 10, 100, 40, hwnd, (HMENU)ID_speichern, ((LPCREATESTRUCT)lParam)-&gt;hInstance, NULL);
			CreateWindowA(&quot;button&quot;, &quot;Projekt&quot;, WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON, 230, 10, 100, 40, hwnd, (HMENU)ID_about, ((LPCREATESTRUCT)lParam)-&gt;hInstance, NULL);
			CreateWindowA(&quot;listbox&quot;, NULL, WS_CHILD | WS_VISIBLE | LBS_STANDARD ^ LBS_SORT | LBS_HASSTRINGS, 10, 60, 300, 500, hwnd, (HMENU)ID_listbox, ((LPCREATESTRUCT)lParam)-&gt;hInstance, NULL); 

		}
	case WM_KEYDOWN:
		switch(wParam)
		{
		case VK_ESCAPE:
			SendMessage(hwnd, WM_CLOSE, 0, 0);
			break;
		}
		case WM_COMMAND:
		{
			if (lParam == (LPARAM)ID_speichern) // hwnd vom button
			{
				if (HIWORD(wParam) == BN_CLICKED) // id vom button
				SendMessage(hwnd, WM_CLOSE, 0, 0); // was der dabei machen soll, z.b. daten auslesen
			}
		}
		break;

	case WM_CLOSE:
		{
			DestroyWindow(hwnd);
			return TRUE;
		}
		break;

	case WM_DESTROY:
		{
			Running = false;
			PostQuitMessage(0);
			return 0;
		}
		break;
	}

	return DefWindowProc(hwnd, msg, wParam, lParam);
}
</code></pre>
<p>Sieht jemand meinen Fehler?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1251499</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1251499</guid><dc:creator><![CDATA[stephan*]]></dc:creator><pubDate>Sat, 24 Mar 2007 08:00:41 GMT</pubDate></item><item><title><![CDATA[Reply to Kleines Tool - Probleme mit Schaltflächen on Sat, 24 Mar 2007 08:25:15 GMT]]></title><description><![CDATA[<p>Doku lesen...</p>
<pre><code class="language-cpp">if ( (HIWORD(wParam) == BN_CLICKED) &amp;&amp; (LOWORD(wParam) == ID_speichern) )
{
  SendMessage(hwnd, WM_CLOSE, 0, 0);
}
</code></pre>
<p>ADD: Siehe:<br />
<a href="http://msdn2.microsoft.com/en-us/library/ms673346.aspx" rel="nofollow">http://msdn2.microsoft.com/en-us/library/ms673346.aspx</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1251504</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1251504</guid><dc:creator><![CDATA[Jochen Kalmbach]]></dc:creator><pubDate>Sat, 24 Mar 2007 08:25:15 GMT</pubDate></item><item><title><![CDATA[Reply to Kleines Tool - Probleme mit Schaltflächen on Sat, 24 Mar 2007 09:15:35 GMT]]></title><description><![CDATA[<p>Danke.<br />
Mir wurde der WM_Command Codeschnippsel so vorgelegt, dachte es liegt vielleicht an meiner ID zuwiesung oder so.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1251514</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1251514</guid><dc:creator><![CDATA[stephan*]]></dc:creator><pubDate>Sat, 24 Mar 2007 09:15:35 GMT</pubDate></item></channel></rss>