<?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[EditWindow]]></title><description><![CDATA[<p>Ich habe gerade nach dem Tutorial von Sterminio Productions ein EditWindow erstellen wollen, habe aber eigene Änderungen vorgenommen und evtl. Dinge übersehen und deshalb erstellt sich bei mir jetzt gar kein EditWindow, aber es wird mir auch kein Fehler angezeigt.</p>
<p>Mein Code:</p>
<pre><code class="language-cpp">// main_cpp //

#include &lt;Windows.h&gt;
#include &lt;iostream&gt;

int width = 640;
int height = 420;

LRESULT CALLBACK WndProc (HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam);
bool InitWndClassEx ( WNDCLASSEX *WndClassEx, HINSTANCE hInstance, const char szClassName[] = &quot;Hallo&quot;); 
const char szClassName[] =  &quot;Hallo&quot;;
      char szTitle[] = &quot;1.Programm   Grafic3 Silent1297 2011 ©&quot;;

		HWND hWndParent;      //legt die Eigenschaften des ParentWindows fest.

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
           LPSTR szCmdLine, int iCmdShow)

    {
        WNDCLASSEX WndClassEx;  // legt die Grundeigenschaften für das Fenster fest.

        MSG msg;        //darin werden die Daten gespeichert.
		HINSTANCE hChildInst = NULL;

        //          Registrierung      //

		InitWndClassEx ( &amp;WndClassEx, hInstance, szClassName);

        //          Fenster Erstellen          //

        hWndParent = CreateWindowEx (NULL,    // beeinhaltet die Folgenden Eigenschaften und die Eigenschaften aus WndClassEx
                         szClassName,   //hierüber werden die Eigenschaften aus WndClassEx. eingebunden
                         szTitle,
                        WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_MINIMIZEBOX | WS_MAXIMIZEBOX, //Fenster (Minimierungsbutton.....
                        300, //Abstand-Oben
                        600, //Abstand-Links
                        width, // Breite
                        height, // Höhe
                        NULL,
                        NULL,
                        hInstance,
                        NULL);		

        if ( hWndParent == NULL )
             {MessageBox ( NULL, &quot;Create Window  failed&quot;, &quot;Error&quot;, MB_OK);
              return false;
             }

        { 
            int cx = GetSystemMetrics(SM_CXSCREEN); //cx = desktopbreite ermitteln
            int cy = GetSystemMetrics(SM_CYSCREEN);//cx = desktophöhe ermitteln

            int px = (cx - width) / 2; //AbstanddesFensters von links errechnen
            int py = (cy - height) / 2; //AbstanddesFensters von oben errechnen

            MoveWindow( hWndParent, px, py, width, height, true);
        }

		 ShowWindow( hWndParent, iCmdShow);
		 UpdateWindow (hWndParent);

        while( GetMessage ( &amp;msg, hWndParent, NULL, NULL) &gt; NULL) // -1 = Fehler | 0 // &gt; 0
            {
                TranslateMessage( &amp;msg ); // wird in Character-Message übersetzt
                DispatchMessage ( &amp;msg ); // wird verschickt an die Callback Funktion
            };
            // WINDOW-PROCEDUR(Einleitungsteil) -&gt; WNDCLASSEX(Registrierung) -&gt; HWND(Fenstereinstellungenfestlegen) -&gt; MESSAGELOOP(Messages übersetzen und an die CALLBACK-Funktion weiterverschicken)

        return 0;
    }

HWND hWndEdit;
HINSTANCE hInstEdit;

LRESULT CALLBACK WndProc (HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)        //Gehirn des eigentlichen Windows, Verarbeitung von Messages...
            {

                //Jede Message hat 2 Informationen ( wParam und lParam)
                switch (msg)
                    {  
						case WM_CREATE:
						hWndEdit =  CreateWindow (    // beeinhaltet die Folgenden Eigenschaften und die Eigenschaften aus WndClassEx
									&quot;Edit&quot;,   //hierüber werden die Eigenschaften aus WndClassEx. eingebunden
							        &quot;EditWindow&quot;,
					                WS_OVERLAPPEDWINDOW | WS_CHILD |WS_VISIBLE, //Fenster (Minimierungsbutton.....
							        CW_USEDEFAULT, //Abstand-Oben
				                    CW_USEDEFAULT, //Abstand-Links
				                    CW_USEDEFAULT, // Breite
									CW_USEDEFAULT, // Höhe
						            hWndParent,
							        NULL,
								    hInstEdit,
							        NULL);		
								break;

                        case WM_DESTROY:        //Fenster Ende (Wenn auf das X-geklickt wird

							if(hWnd == hWndParent)
								{
                            PostQuitMessage(0);
								}

                            break;

                        default:
						     return DefWindowProc ( hWnd, msg, wParam, lParam);

				   }
				return 0;
            }

bool InitWndClassEx ( WNDCLASSEX *WndClassEx , HINSTANCE hInstance, const char *szClassName)     //Funktion mit Defaultwerten für zB ChildWindows
    {
        WndClassEx-&gt;cbSize      = sizeof( *WndClassEx);
        WndClassEx-&gt;style       = NULL;
        WndClassEx-&gt;lpfnWndProc = (WNDPROC)WndProc;  // hWnd -&gt; CreateWindow (szClassName ) -&gt; WndClass.
        WndClassEx-&gt;cbClsExtra  = NULL;
        WndClassEx-&gt;cbWndExtra  = NULL;
        WndClassEx-&gt;hInstance   = hInstance;
        WndClassEx-&gt;hIcon      = LoadIcon( NULL, IDI_WARNING); //Icon
        WndClassEx-&gt;hCursor    = LoadCursor( NULL,IDC_ARROW); //Cursor
        WndClassEx-&gt;hbrBackground = (HBRUSH) GetStockObject ( WHITE_BRUSH) ;    //Fensterfarbe
        WndClassEx-&gt;lpszMenuName = NULL;
        WndClassEx-&gt;lpszClassName =  szClassName;   // C-String
        WndClassEx-&gt;hIconSm      =  LoadIcon (NULL, IDI_APPLICATION);

        if ( !RegisterClassEx ( WndClassEx ))
             {MessageBox ( NULL, &quot;Register Class failed&quot;, &quot;Error&quot;, MB_OK);
              return false;
             }

    }
</code></pre>
<p>Sieht jemand woran es liegt ?<br />
Gruß<br />
silent12</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/295706/editwindow</link><generator>RSS for Node</generator><lastBuildDate>Sat, 15 Aug 2026 08:28:07 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/295706.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 19 Nov 2011 17:52:50 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to EditWindow on Sat, 19 Nov 2011 17:52:50 GMT]]></title><description><![CDATA[<p>Ich habe gerade nach dem Tutorial von Sterminio Productions ein EditWindow erstellen wollen, habe aber eigene Änderungen vorgenommen und evtl. Dinge übersehen und deshalb erstellt sich bei mir jetzt gar kein EditWindow, aber es wird mir auch kein Fehler angezeigt.</p>
<p>Mein Code:</p>
<pre><code class="language-cpp">// main_cpp //

#include &lt;Windows.h&gt;
#include &lt;iostream&gt;

int width = 640;
int height = 420;

LRESULT CALLBACK WndProc (HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam);
bool InitWndClassEx ( WNDCLASSEX *WndClassEx, HINSTANCE hInstance, const char szClassName[] = &quot;Hallo&quot;); 
const char szClassName[] =  &quot;Hallo&quot;;
      char szTitle[] = &quot;1.Programm   Grafic3 Silent1297 2011 ©&quot;;

		HWND hWndParent;      //legt die Eigenschaften des ParentWindows fest.

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
           LPSTR szCmdLine, int iCmdShow)

    {
        WNDCLASSEX WndClassEx;  // legt die Grundeigenschaften für das Fenster fest.

        MSG msg;        //darin werden die Daten gespeichert.
		HINSTANCE hChildInst = NULL;

        //          Registrierung      //

		InitWndClassEx ( &amp;WndClassEx, hInstance, szClassName);

        //          Fenster Erstellen          //

        hWndParent = CreateWindowEx (NULL,    // beeinhaltet die Folgenden Eigenschaften und die Eigenschaften aus WndClassEx
                         szClassName,   //hierüber werden die Eigenschaften aus WndClassEx. eingebunden
                         szTitle,
                        WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_MINIMIZEBOX | WS_MAXIMIZEBOX, //Fenster (Minimierungsbutton.....
                        300, //Abstand-Oben
                        600, //Abstand-Links
                        width, // Breite
                        height, // Höhe
                        NULL,
                        NULL,
                        hInstance,
                        NULL);		

        if ( hWndParent == NULL )
             {MessageBox ( NULL, &quot;Create Window  failed&quot;, &quot;Error&quot;, MB_OK);
              return false;
             }

        { 
            int cx = GetSystemMetrics(SM_CXSCREEN); //cx = desktopbreite ermitteln
            int cy = GetSystemMetrics(SM_CYSCREEN);//cx = desktophöhe ermitteln

            int px = (cx - width) / 2; //AbstanddesFensters von links errechnen
            int py = (cy - height) / 2; //AbstanddesFensters von oben errechnen

            MoveWindow( hWndParent, px, py, width, height, true);
        }

		 ShowWindow( hWndParent, iCmdShow);
		 UpdateWindow (hWndParent);

        while( GetMessage ( &amp;msg, hWndParent, NULL, NULL) &gt; NULL) // -1 = Fehler | 0 // &gt; 0
            {
                TranslateMessage( &amp;msg ); // wird in Character-Message übersetzt
                DispatchMessage ( &amp;msg ); // wird verschickt an die Callback Funktion
            };
            // WINDOW-PROCEDUR(Einleitungsteil) -&gt; WNDCLASSEX(Registrierung) -&gt; HWND(Fenstereinstellungenfestlegen) -&gt; MESSAGELOOP(Messages übersetzen und an die CALLBACK-Funktion weiterverschicken)

        return 0;
    }

HWND hWndEdit;
HINSTANCE hInstEdit;

LRESULT CALLBACK WndProc (HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)        //Gehirn des eigentlichen Windows, Verarbeitung von Messages...
            {

                //Jede Message hat 2 Informationen ( wParam und lParam)
                switch (msg)
                    {  
						case WM_CREATE:
						hWndEdit =  CreateWindow (    // beeinhaltet die Folgenden Eigenschaften und die Eigenschaften aus WndClassEx
									&quot;Edit&quot;,   //hierüber werden die Eigenschaften aus WndClassEx. eingebunden
							        &quot;EditWindow&quot;,
					                WS_OVERLAPPEDWINDOW | WS_CHILD |WS_VISIBLE, //Fenster (Minimierungsbutton.....
							        CW_USEDEFAULT, //Abstand-Oben
				                    CW_USEDEFAULT, //Abstand-Links
				                    CW_USEDEFAULT, // Breite
									CW_USEDEFAULT, // Höhe
						            hWndParent,
							        NULL,
								    hInstEdit,
							        NULL);		
								break;

                        case WM_DESTROY:        //Fenster Ende (Wenn auf das X-geklickt wird

							if(hWnd == hWndParent)
								{
                            PostQuitMessage(0);
								}

                            break;

                        default:
						     return DefWindowProc ( hWnd, msg, wParam, lParam);

				   }
				return 0;
            }

bool InitWndClassEx ( WNDCLASSEX *WndClassEx , HINSTANCE hInstance, const char *szClassName)     //Funktion mit Defaultwerten für zB ChildWindows
    {
        WndClassEx-&gt;cbSize      = sizeof( *WndClassEx);
        WndClassEx-&gt;style       = NULL;
        WndClassEx-&gt;lpfnWndProc = (WNDPROC)WndProc;  // hWnd -&gt; CreateWindow (szClassName ) -&gt; WndClass.
        WndClassEx-&gt;cbClsExtra  = NULL;
        WndClassEx-&gt;cbWndExtra  = NULL;
        WndClassEx-&gt;hInstance   = hInstance;
        WndClassEx-&gt;hIcon      = LoadIcon( NULL, IDI_WARNING); //Icon
        WndClassEx-&gt;hCursor    = LoadCursor( NULL,IDC_ARROW); //Cursor
        WndClassEx-&gt;hbrBackground = (HBRUSH) GetStockObject ( WHITE_BRUSH) ;    //Fensterfarbe
        WndClassEx-&gt;lpszMenuName = NULL;
        WndClassEx-&gt;lpszClassName =  szClassName;   // C-String
        WndClassEx-&gt;hIconSm      =  LoadIcon (NULL, IDI_APPLICATION);

        if ( !RegisterClassEx ( WndClassEx ))
             {MessageBox ( NULL, &quot;Register Class failed&quot;, &quot;Error&quot;, MB_OK);
              return false;
             }

    }
</code></pre>
<p>Sieht jemand woran es liegt ?<br />
Gruß<br />
silent12</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2146401</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2146401</guid><dc:creator><![CDATA[silent12]]></dc:creator><pubDate>Sat, 19 Nov 2011 17:52:50 GMT</pubDate></item></channel></rss>