Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (WinAPI, Konsole) » Mache ich oder devcpp was falsch?

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: [ 1 ] > 2 <
010
05.12.2006, 15:54 Uhr
Guybrush Threepwood
Gefürchteter Pirat
(Operator)


Ja stimmt wenn die Registrierung fehlschlägt sollte das Programm an der Stelle natürlich in den Meisten Fällen beendet werden.
Aber das ist ja nicht der Grund warum die Registrierung fehlschlägt.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
011
05.12.2006, 20:45 Uhr
Spacelord
Hoffnungsloser Fall



C++:
LRESULT CALLBACK MessFunc(HWND mwinhan,UINT mcode,WPARAM wndcmd,LPARAM wndsize)
{  /*
    static RECT rectangle;          // our loved rectangle for getting the clientedges
    static char cBuffer[128];
    static int iactlen;
    */

    switch (mcode)
    {/*
        case WM_SIZE:
        {
            rectangle.left = 20;
            rectangle.right = LOWORD(wndsize)-20;
            rectangle.bottom = HIWORD(wndsize);
            return 0;
        }  
     /*   case WM_CHAR:
        {
            switch(wndcmd)              // --> again inside an case we use another switch!!!
            {
                case '\r':              // here we check for single keys, this one is the return key
                {
                    iactlen = 0;      // usually known as linefeed and carriage return in its function
                    InvalidateRect(mwinhan,NULL,TRUE);      // here we draw thew whole client edge again
                    break;                                  // and jump out of the damn switch
                }
                case '\b':              // this virtual keycode means backspace, erase
                {
                    if(iactlen <= 0)    // we gonna only erase characters, if there are some
                    {
                        break;
                    }
                    iactlen -- ;        // forgotten ? ->postdecrement
                    InvalidateRect(mwinhan,NULL,TRUE);      // and draw it immediately to screen
                    break;                  // and leave this fuckng switch
                }
                case '\t':
                case '\n':
                case 27:
                {
                    break;
                }           // we first want to ignore all the other command-chars
                default:
                {
                    if(iactlen < sizeof(cBuffer))
                    {
                        cBuffer[iactlen++] = wndcmd;
                        InvalidateRect(mwinhan,NULL,FALSE);  // here were gonna deaw again,
                    }                                        // but erase the clientedge with the bgbrush before                    
                break;
                }
            }
        return 0;        
        }
        case WM_PAINT:
        {
            PAINTSTRUCT paintinfo;
            HDC hdevcon;
            
            hdevcon = BeginPaint(mwinhan,&paintinfo);
            {
                DrawText(hdevcon,cBuffer,iactlen,&rectangle,DT_SINGLELINE|DT_VCENTER);
                
            }EndPaint(mwinhan,&paintinfo);
            return 0;
        }/*
        case WM_KEYDOWN:
        {
            if(wndcmd == VK_ESCAPE)         // the escape-button is defined by an virtual key, too
            {                               // if it is hit, the app schould close by sending an WM_CLOSE
                SendMessage(mwinhan,WM_CLOSE,0,0);// which will be treated properly by the DefWindowProc
            }
            return 0;  
        }*/

        case WM_DESTROY:
        {
            PostQuitMessage(0);
            return 0;
        }
        default:
            return DefWindowProc(mwinhan,mcode,wndcmd,wndsize);
    }
    
}


Beachte das default in deiner switch Anweisung.
Dann entfern noch das erste RegisterClass und alles wird gut.

Gruß Spacelord
--
.....Ich mach jetzt nämlich mein Jodeldiplom.Dann hab ich endlich was Eigenes.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
012
06.12.2006, 16:19 Uhr
z-boson



HAHAHA, DANKE!!!!!!
Nun kann ich wieder ruhig schlafen.
Aber wie konnte ich das übersehen?
Gehört doch ans Ende der WndProc als RÜckgabewert für die Warteschlange in Default fällen, aber nicht als default einer switch..
Damn!
Bis demnächst!!!
--
...we have to create righteous thoughts for righteous words and righteous actions.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: [ 1 ] > 2 <     [ C / C++ (WinAPI, Konsole) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: