C++ und MessageBox beim Beenden

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

Hi Claudia :smile:

Mit einem binären Oder, also eine senkrechten Stricht:

MB_YESNO | MB_ICONQUESTION

Na gut, ein Pluszeichen würde auch gehen.

cu Stefan.

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.

viel Erfolg

Rüdiger

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…

Gruß
Claudi - die auf Hilfe wartet

Wie kann ich denn die Buttons der
MessageBox programmieren? Die VS-Hilfe
gibt mir dazu natürlich auch nichts
her…

Gruß
Claudi - die auf Hilfe wartet

hallo !

eigentlich muesste die messagebox einen
rueckgabewert liefern, den du abfragen
kannst.
oder ?!

patrick - der hofft geholfen zu haben

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

MfG
Andreas