Rückgabewert in Extension 'Windows Dialogs'

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Rückgabewert in Extension 'Windows Dialogs'

    Hallo liebe Community,
    melde ich mich auch mal wieder mit einem Problem:

    Ich habe mir für mein aktuelles Projekt vorgenommen Messageboxes der Win-API entsprechend zu benutzen. Da ich mich auch ein wenig in die Materie 'Extensions' einarbeiten wollte, passte das ganz gut, da es ja von Mark bereits eine Extension für mein Vorhaben gab.

    Nun bin ich eben dabei meine gesamten Dialoge durch die Funktionen der Extension zu ersetzen.
    Dabei ergab sich folgendes Problem:

    Bei einer Frage benutze ich den Code:

    GML-Quellcode

    1. {
    2. wd_message_set_text("Do you want to try it again?");
    3. wd_message_show(wd_mk_confirmation,wd_mb_yes,wd_mb_no,wd_mb_none);
    4. }


    In der Hilfe zu der Extension steht:
    [...]The function returns the button pressed.[...]

    Doch leider wird das gedrückte nicht so wiedergegenben wie ich es möchte.

    Meine Frage ist jetzt, wie man den Rückgabewert (ob 'yes' oder 'no') checken kann, denn der Rückgabewert entspricht nicht 0 oder 1 sondern jeweils 0 oder 1 (je nach dem wie ich die if-bedingung danach stelle).

    Die if-Bedingung habe ich so geschrieben:

    GML-Quellcode

    1. [...]
    2. if (wd_mb_yes == true)
    3. {
    4. Tu dies
    5. und dies
    6. }
    7. else
    8. tu das
    9. }


    Ich habe noch alles andere mir Ersichtliche versucht; leider ohne Erfolg.

    Ich freue mich und hoffe auf Eure Antworten!

    P.S. Seit wann gibts denn diese Schablone? ^^
    P.P.S. Die neuen BB-Code-'Helfer' sind nicht so gut wie vorher, weil man z.B. in einem GML-Code auch mal mehrere Zeilen anstatt nur einer braucht ;) Die Alten, bei denen immer nur der Einleit-bb-code und beim 2. mal Klicken der End-bb-code erschien, gefielen mir besser.
  • ohne mich jetzt näher in das wd_ thema eingearbeitet zu haben würde ich folgendes testen:

    GML-Quellcode

    1. str = wd_message_show(wd_mk_confirmation,wd_mb_yes,wd_mb_no,wd_mb_none);


    und dann bei dem if - Teil:

    GML-Quellcode

    1. if (str == "wd_mb_yes") { ...


    dürfte funktionieren ohne es jetzt getestet zu haben
  • Leider hat das nicht funktioniert :(
    ___________________________________________
    ERROR in
    action number 16
    of Step Event
    for object obj_lvl_5_special:

    Error in code at line 7:
    if (str == "wd_mb_yes")

    at position 13: Cannot compare arguments.


    Das mit den Operatoren sollte ich mir wohl besser auch noch einmal angucken; aber zurück zum Problem.

    Das ganze mit einer Variable zu lösen hatte ich auch schon versucht, aber leider hat dies ja auch nicht geklappt.
    Wieso sollte Mark eigentlich auch gerade den Rückgabewert bei der Extension nicht mit eingebaut haben?
  • Da sich vom Grundprinzip beide Sachen nicht unterscheiden hab ich meinen Fehler auch gefunden, einfach beiif (str == "wd_mb_yes") { ...

    Die beiden " weglassen, naja schön das dir blackspark weiterhelfen konnte :)
  • Das habe ich mir heute auch schon gedacht, als ich noch ein wenig die Hilfe auswendig gelernt habe ^^ (einiges ist leider so unklar für mich, dass ich die entsprechenden Themen bzw. funktionen nicht aus dem FF kann :( )
    Danke jedenfalls :D

    Edit: Ich bin total zufrieden mit diesen Fenstern :P Aber vielleicht mache ich doch own-drawn... hauptsache ich habe etwas gelernt (hoffentlich...)

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von domimah ()