<?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[Fenster == Stalker... will sich nicht zeigen  :(]]></title><description><![CDATA[<pre><code class="language-cpp">wndInfo = CreateWindow( &quot;INFO&quot;, &quot;234&quot;, WS_VISIBLE, 100, 100, 300, 300, NULL, NULL, ((LPCREATESTRUCT)lParam)-&gt;hInstance, NULL );
if( !wndInfo )
	printf( &quot;wndInfo error: %d\n&quot;, GetLastError() );
else
{
	SendMessage( wndInfo, PM_SETINFOTEXT, 0, (LPARAM)tmp );
	if( !UpdateWindow( wndInfo ) )
		printf( &quot;error: %d\n&quot;, GetLastError() );
	ShowWindow( wndInfo, SW_SHOWNORMAL );
}
LRESULT CALLBACK infoProc( HWND myWnd, UINT msg, WPARAM wParam, LPARAM lParam )
{
	HDC myHdc;
	PAINTSTRUCT myPaint;
	static char *text;
	switch( msg )
	{
		case WM_PAINT:
			myHdc = BeginPaint( myWnd, &amp;myPaint );
			{
				TextOut( myHdc, 0, 0, text, strlen( text ) );
			}
			EndPaint( myWnd, &amp;myPaint );
		break;
		case PM_SETINFOTEXT:
			printf( &quot;.&quot; );
			text = (char*)lParam;
			printf( &quot;.&quot; );
			InvalidateRect( myWnd, NULL, TRUE );
		break;
		case WM_LBUTTONUP:
			//ShowWindow( myWnd, SW_HIDE );
		break;
	}
}
</code></pre>
<p>Also ShowWindow kann man echt knicken... ZUmindest in Zeile 9, denn das Fenster, bleibt versteckt...</p>
<p>Warum <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 verstehe das wirklich nicht.<br />
Bei dem Fenster (bei dessen WM_CREATE dieses Fenster creat-et wird) klappt das:</p>
<pre><code class="language-cpp">bool createMainWindow( void )
{
	HWND myWnd;
	bool returnValue = true;
	RECT parent;

	myWnd = CreateWindow(
				appName,			//Name der Fensterklasse
				appTitle,			//Titel des Fensters
				WS_VISIBLE,			//Stil des Fensters
				CW_USEDEFAULT,		//Position X
				CW_USEDEFAULT,		//Position Y
				800,				//Breite
				600,				//Höhe
				NULL,				//Parent
				NULL,				//Menue
				myHandleInst,		//Handle des Programms
				NULL				//Zusätzliche Daten
			);

	if( !myWnd )
		returnValue = false;
	else
	{
		myAppWnd = myWnd;
		ShowWindow( myWnd, SW_SHOWNORMAL );
		UpdateWindow( myWnd );		//WM_PAINT message an Fenster senden
	}

	return returnValue;
}
</code></pre>
<p>Schrecklich... Genau das selbse... HILFE..</p>
<p>danke.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/204732/fenster-stalker-will-sich-nicht-zeigen</link><generator>RSS for Node</generator><lastBuildDate>Sun, 26 Apr 2026 18:10:58 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/204732.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 06 Feb 2008 15:00:24 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Fenster == Stalker... will sich nicht zeigen  :( on Wed, 06 Feb 2008 15:00:24 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">wndInfo = CreateWindow( &quot;INFO&quot;, &quot;234&quot;, WS_VISIBLE, 100, 100, 300, 300, NULL, NULL, ((LPCREATESTRUCT)lParam)-&gt;hInstance, NULL );
if( !wndInfo )
	printf( &quot;wndInfo error: %d\n&quot;, GetLastError() );
else
{
	SendMessage( wndInfo, PM_SETINFOTEXT, 0, (LPARAM)tmp );
	if( !UpdateWindow( wndInfo ) )
		printf( &quot;error: %d\n&quot;, GetLastError() );
	ShowWindow( wndInfo, SW_SHOWNORMAL );
}
LRESULT CALLBACK infoProc( HWND myWnd, UINT msg, WPARAM wParam, LPARAM lParam )
{
	HDC myHdc;
	PAINTSTRUCT myPaint;
	static char *text;
	switch( msg )
	{
		case WM_PAINT:
			myHdc = BeginPaint( myWnd, &amp;myPaint );
			{
				TextOut( myHdc, 0, 0, text, strlen( text ) );
			}
			EndPaint( myWnd, &amp;myPaint );
		break;
		case PM_SETINFOTEXT:
			printf( &quot;.&quot; );
			text = (char*)lParam;
			printf( &quot;.&quot; );
			InvalidateRect( myWnd, NULL, TRUE );
		break;
		case WM_LBUTTONUP:
			//ShowWindow( myWnd, SW_HIDE );
		break;
	}
}
</code></pre>
<p>Also ShowWindow kann man echt knicken... ZUmindest in Zeile 9, denn das Fenster, bleibt versteckt...</p>
<p>Warum <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 verstehe das wirklich nicht.<br />
Bei dem Fenster (bei dessen WM_CREATE dieses Fenster creat-et wird) klappt das:</p>
<pre><code class="language-cpp">bool createMainWindow( void )
{
	HWND myWnd;
	bool returnValue = true;
	RECT parent;

	myWnd = CreateWindow(
				appName,			//Name der Fensterklasse
				appTitle,			//Titel des Fensters
				WS_VISIBLE,			//Stil des Fensters
				CW_USEDEFAULT,		//Position X
				CW_USEDEFAULT,		//Position Y
				800,				//Breite
				600,				//Höhe
				NULL,				//Parent
				NULL,				//Menue
				myHandleInst,		//Handle des Programms
				NULL				//Zusätzliche Daten
			);

	if( !myWnd )
		returnValue = false;
	else
	{
		myAppWnd = myWnd;
		ShowWindow( myWnd, SW_SHOWNORMAL );
		UpdateWindow( myWnd );		//WM_PAINT message an Fenster senden
	}

	return returnValue;
}
</code></pre>
<p>Schrecklich... Genau das selbse... HILFE..</p>
<p>danke.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1450623</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1450623</guid><dc:creator><![CDATA[lippoliv]]></dc:creator><pubDate>Wed, 06 Feb 2008 15:00:24 GMT</pubDate></item><item><title><![CDATA[Reply to Fenster == Stalker... will sich nicht zeigen  :( on Wed, 06 Feb 2008 15:12:26 GMT]]></title><description><![CDATA[<p>was ist denn das fürn code ... wenn du WS_VISIBLE setzt kannst du dir show window sparen.<br />
außerdem zeigt *text ins nirvana, hau mal WM_PAINT raus und schaue ob du das fenster nicht doch siehst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1450634</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1450634</guid><dc:creator><![CDATA[Black Shadow]]></dc:creator><pubDate>Wed, 06 Feb 2008 15:12:26 GMT</pubDate></item><item><title><![CDATA[Reply to Fenster == Stalker... will sich nicht zeigen  :( on Wed, 06 Feb 2008 15:22:09 GMT]]></title><description><![CDATA[<p>Nein.</p>
<p>text wird -dank PM_SETINFOTEXT- befüllt.<br />
WM_PAINT gibt dann den Text aus.</p>
<p>Das mit dem ShowWindow SW_SHOWNORMAL hab ich mir gedacht, aber wenn es nicht geht teste ich lieber erstmal, bevor ich poste.</p>
<p>WHA HEUTE IS NICH MEIN TAG...</p>
<p>return in einer WNDPROC währe angebracht oder?</p>
<p>sry <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="😃"
    /> <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="😃"
    /> my fault..</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1450646</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1450646</guid><dc:creator><![CDATA[lippoliv]]></dc:creator><pubDate>Wed, 06 Feb 2008 15:22:09 GMT</pubDate></item><item><title><![CDATA[Reply to Fenster == Stalker... will sich nicht zeigen  :( on Wed, 06 Feb 2008 15:27:31 GMT]]></title><description><![CDATA[<p>... und ein Aufruf der DefWindowProc!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1450654</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1450654</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Wed, 06 Feb 2008 15:27:31 GMT</pubDate></item><item><title><![CDATA[Reply to Fenster == Stalker... will sich nicht zeigen  :( on Wed, 06 Feb 2008 15:40:59 GMT]]></title><description><![CDATA[<p>Das ist ja bei nem Return dabei (return DefWindowProc...).</p>
<p>Jetzt ist aber folgendes eingetreten. Ich will eine Zeile anzeigen lassen, TEXT, also nicht eine sondern 4 stk.<br />
TextOut versagt, also nehme ich DrawText, und jetzt geht gar nichts mehr.</p>
<pre><code class="language-cpp">DrawText( myHdc, text, lstrlen( text ), &amp;rect, DT_CENTER | DT_WORDBREAK | DT_NOCLIP );
</code></pre>
<p>Wenn ich mit printf( &quot;%s\n&quot;, text ); rangehe, kein problem, alles klappt, aber DrawText versagt. Kein Text zu sehen.</p>
<p>Warum?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1450669</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1450669</guid><dc:creator><![CDATA[lippoliv]]></dc:creator><pubDate>Wed, 06 Feb 2008 15:40:59 GMT</pubDate></item><item><title><![CDATA[Reply to Fenster == Stalker... will sich nicht zeigen  :( on Wed, 06 Feb 2008 16:10:00 GMT]]></title><description><![CDATA[<p>lippoliv schrieb:</p>
<blockquote>
<p>Das ist ja bei nem Return dabei (return DefWindowProc...).<br />
nein. du solltest dich schon an die return-Werte halten, die dir in der MSDN vorgegeben werden.</p>
</blockquote>
<blockquote>
<p>Jetzt ist aber folgendes eingetreten. Ich will eine Zeile anzeigen lassen, TEXT, also nicht eine sondern 4 stk.<br />
TextOut versagt, also nehme ich DrawText, und jetzt geht gar nichts mehr.</p>
<pre><code class="language-cpp">DrawText( myHdc, text, lstrlen( text ), &amp;rect, DT_CENTER | DT_WORDBREAK | DT_NOCLIP );
</code></pre>
<p>Wenn ich mit printf( &quot;%s\n&quot;, text ); rangehe, kein problem, alles klappt, aber DrawText versagt. Kein Text zu sehen.</p>
<p>Warum?</p>
</blockquote>
<p>vllt. solltest du den text-buffer befüllen bzw. überhaupt erstmal speicher allokieren. vielleicht ist deine RECT-struktur auch falsch befüllt?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1450690</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1450690</guid><dc:creator><![CDATA[hey]]></dc:creator><pubDate>Wed, 06 Feb 2008 16:10:00 GMT</pubDate></item><item><title><![CDATA[Reply to Fenster == Stalker... will sich nicht zeigen  :( on Thu, 07 Feb 2008 06:33:35 GMT]]></title><description><![CDATA[<p>hey schrieb:</p>
<blockquote>
<p>vllt. solltest du den text-buffer befüllen bzw. überhaupt erstmal speicher allokieren. vielleicht ist deine RECT-struktur auch falsch befüllt?</p>
</blockquote>
<pre><code class="language-cpp">LRESULT CALLBACK infoProc( HWND myWnd, UINT msg, WPARAM wParam, LPARAM lParam )
{
	bool retValue = false;
	HDC myHdc;
	PAINTSTRUCT myPaint;
	static char *text;
	RECT rect = {0};
	switch( msg )
	{
		case WM_SIZE:
		{
			rect.left    = 0;
			rect.top     = 0;
			rect.right   = LOWORD(lParam);
			rect.bottom  = HIWORD(lParam);
		}
		case WM_PAINT:
			myHdc = BeginPaint( myWnd, &amp;myPaint );
			{
				printf( &quot;%s\n&quot;, text );
				DrawText( myHdc, text, lstrlen( text ), &amp;rect, DT_CENTER | DT_SINGLELINE );
			}
			EndPaint( myWnd, &amp;myPaint );
			retValue = true;
		break;
		case PM_SETINFOTEXT:
			printf( &quot;.&quot; );
			text = (char*)lParam;
			printf( &quot;.&quot; );
			InvalidateRect( myWnd, NULL, TRUE );
			retValue = true;
		break;
		case WM_LBUTTONUP:
			ShowWindow( myWnd, SW_HIDE );
			retValue = true;
		break;
	}
	if(!retValue)
		return  DefWindowProc( myWnd, msg, wParam, lParam );

	return retValue;
}
</code></pre>
<p>Bevor ich WM_PAINT aufrufe, wird PM_SETINFOTEXT gesendet, also ist der Buffer befüllt, was ich natürlich auch schon aus kraft gesetzt habe indem ich anmerkte, dass wenn ich</p>
<pre><code class="language-cpp">printf( &quot;%s&quot;, text);
</code></pre>
<p>mache er den Text anzeigt, also muss alles richtig sein.</p>
<p>ich bin mit <a href="http://www.win-api.de/tutorials.php?tutid=5&amp;SessID=3a7f827d832204c0e5539a37d9b9f063" rel="nofollow">diesem</a> Tutorial zur Hilfe an die Sache ran gegangen, allerdings schreiben die auch nur Singleline, und mit Singleline hätt ich ja auch gleich TextOut machen können.</p>
<p>hey schrieb:</p>
<blockquote>
<p>lippoliv schrieb:</p>
<blockquote>
<p>Das ist ja bei nem Return dabei (return DefWindowProc...).<br />
nein. du solltest dich schon an die return-Werte halten, die dir in der MSDN vorgegeben werden.</p>
</blockquote>
</blockquote>
<p>meintest du</p>
<p>hey schrieb:</p>
<blockquote>
<p>lippoliv schrieb:</p>
<blockquote>
<p>Das ist ja bei nem Return dabei (return DefWindowProc...).</p>
</blockquote>
<p>nein. du solltest dich schon an die return-Werte halten, die dir in der MSDN vorgegeben werden.</p>
</blockquote>
<p>Ist auch egal, ich verstehe deine aussage nciht:<br />
<a href="http://www.win-api.de/tutorials.php?tutid=5&amp;SessID=3a7f827d832204c0e5539a37d9b9f063" rel="nofollow">Hier</a> siehst du auch dass entweder</p>
<pre><code class="language-cpp">return 0;
</code></pre>
<p>oder</p>
<pre><code class="language-cpp">return DefWindowProc(...);
</code></pre>
<p>benutzt wird, also wieso sollte ich mich nicht daran halten? Diese Tutorials wurden mir empfohlen...</p>
<p>DANKE</p>
<p>hey schrieb:</p>
<blockquote>
<p>vielleicht ist deine RECT-struktur auch falsch befüllt?</p>
</blockquote>
<pre><code class="language-cpp">RECT rect = {0};
--&gt;&gt;
static RECT rect = {0};
</code></pre>
<p>So klappts auch, jetzt muss ich nur noch skallieren.</p>
<p>Dickes danke an alle.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1450976</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1450976</guid><dc:creator><![CDATA[lippoliv]]></dc:creator><pubDate>Thu, 07 Feb 2008 06:33:35 GMT</pubDate></item></channel></rss>