Hallo Programmierer!
Ich habe ein kleines Programm geschrieben und möchte nun, dass beim Beenden eine „YESNO-ICONQUESTION-MessageBox“ kommt. Ich bekomme aber nur entweder eine YESNO-Box, oder eine ICONQUESTION-Box, je nach dem in welcher Reihenfolge ich die Box-Styles hinschreibe. Wie kann ich denn beides kombinieren?
Meine bisherige Sytax:
AfxMessageBox(„Wollen Sie …?“, MB_YESNO, MB_ICONQUESTION);
Und wie kann ich dann die Buttons der MessageBox ansprechen, oder sind die schon automatisch vorbelegt?
Vielen Dank schon mal!
Claudi - die grad C++ lernt
Hallo, ich bin zwar kein C+±Crack, aber meines Wissens werden die Boxstyles mit binär or verknüpft. Welcher Button genutzt wurde bekommst du als Ergebnis der Funktion zurück und kannst entsprechend reagieren.
Dankeschön! Das hat geklappt! *freu*
Nur ich kann nicht beeinflussen, was passiert, wenn ich auf „Ja“ oder „Nein“ klicke. Im Moment fliege ich bei beiden raus. Wie kann ich denn die Buttons der MessageBox programmieren? Die VS-Hilfe gibt mir dazu natürlich auch nichts her…
1.) Dass du „rausfliegst“ ist ganz normal! Du musst ja den Rueckgabewert auswerten und DANN entsprechendes in deinem Code tun. Funktioniert folgendermassen
if( IDYES == MessageBox(_T(„Meldung“), _T(„FensterTitel“), MB_YESNO | MB_ICONINFORMATION) )
{
// hier Code einfuegen, wenn JA gewaehlt
}
else
{
// hier Code einfuegen, wenn NEIN (bzw. Fenster geschlossen…ESC gedrueckt…)gewaehlt
}
2.) Die VS Hilfe hat dafuer einige Beispiele und unter „MessageBox“ steht beim Return-Wert:
//—schnipp
Return Value
Specifies the outcome of the function. It is 0 if there is not enough memory to create the message box.
//—schnapp