[C++] if-Problem

Xodery

Grünschnabel
moinsen...
ich hab eine kleine windows-appliktion gemacht und ein menü mit dem eintrag "File" > "Beenden" hinzugefügt...
Nun soll, wenn man darauf klickt, ein Dialog erscheinen "Wirklich beenden?" .
Ich habs so probiert:
Code:
case IDM_FILEEXIT:
                  MessageBox(NULL, "Wollen Sie das Programm wirklich beenden?", "Beenden?", MB_OK | MB_ICONQUESTION | MB_YESNO | MB_SYSTEMMODAL );
                  if (IDYES == 1)
                  {
                            SendMessage( hwnd, WM_CLOSE, 0, 0L );
                  }
                  else
                  {
                        return 0;
                  }  
                  return 0;

nur leider funktioniert es nicht...ich glaube fest daran, das ich etwas falsch gemacht hab...^^
erbitte hilfe...

Xodery
 
IDYES ist eine Konstante mit festem Wert. Daher funktioniert die Abfrage nicht. Du muss den Rückgabewert der MessageBox-Funktion prüfen.
C++:
if( MessageBox( NULL,
                "Wollen Sie das Programm wirklich beenden?",
                "Beenden?",
                MB_OK | MB_ICONQUESTION | MB_YESNO | MB_SYSTEMMODAL ) == IDYES )
{
    // ...
}
Gruß
MCoder
 
Hi!
danke...hat funktioniert! ich bin noch nich so lange am C++-Ball wie die meisten andren hier...deshalb könnten noch öfter solche dummen fehler kommen^^ :)

danke erstmal...

Xodery
 
Zurück