MessageBox falscher Rückgabewert
-
Hallo,
ich möchte nach einer Aktion eine MessageBox anzeigen lassen mit zwei Schaltflächen, YES und NO. Der Aufruf sieht so aus:
Application->MessageBox("Nicht gefunden!Laufwerk wechseln?","Info",MB_YESNO);
Nachdem ich dann eine der Schaltflächen anklicke, liefert diese mir einen Rückgabewert, den ich weiterverarbeiten kann. Bei YES soll das die 6 und bei NO die 7 sein, laut BCB Hilfe. Um den Wert zu überprüfen lasse ich mir diesen in einem Label anzeigen und egal welche Schaltfläche ich klicke es wird mir die 5 zurückgegeben. Ich kann also nicht auf die 6 bzw 7 abfragen. Kann mir jemand weiterhelfen, so dass mir die richtigen Rückgabewerte ausgegeben werden?Danke.
-
Kann das Problem nicht nachvollziehen. Folgendes Beispiel funktioniert bei mir einwandfrei:
TModalResult mr = Application->MessageBoxA("Test", "Test", MB_YESNO); if (mr == IDYES) Label1->Caption = "JA"; else Label1->Caption = "NEIN";Oder in der Kurzform:
if (Application->MessageBoxA("Test", "Test", MB_YESNO) == IDYES) { ... }Du solltest grundsätzlich die Konstanten verwenden, keine direkten int-Werte...
-
Ich habe mal die Kurzform an mein Projekt angepasst und ich kann zu meiner Freude feststellen, dass es geht. Danke für die schnelle Hilfe.