Messagebox auswahl



  • int Meldung, ueberschrift, Buttons, Typ;

    int ueberschrift? sieht bei dir ´ne messagebox so aus:

    Application->MessageBox(154,125,0);
    

    ???
    nein, er sieht wenn überhaupt so auf:

    Application->MessageBox("154","125",0);
    

    du darfst keine Integers als überschrift benutzen sondern musst 'char*' benutzen. Dann lies dir Nochmla den Unterschied zwischen '=' und '==' durch.

    Lies dir ausserdem den Unterschied zwischen Variablen durch, die ausserhalb der des button codes stehen und innerhalb.

    wenn du das alles gelesen hast, wirst du alle fehler beheben können.
    achja, und wie man einen 'AnsiString' zu einem 'char*' formatiert.

    J0



  • Original erstellt von Hasm:
    Ich bekomme aber viele tolle fehlermeldungen!

    1.: Bitte immer die genauen Fehlermeldunegn mit angeben, sonst wird das helfen nur unnötog schwerer.

    2.: Zur besseren Lesbarkeit bitte die Code-Tags benutzen.

    3.: Bist du dir sicher, dass die Message und die Überschrift Integer sein sollen?



  • Probiere es doch mal so:

    Lege ein paar RadioButtons (8 Stück) an (wie in deinem Beispiel) und schreibe es so:

    String Meldung;
    String Ueberschrift;
    int Schaltflaeche;
    int Bild;
    
    //Definieren der Schaltflaechen:
    
    if (RadioButton1->Checked == true)
        Schaltflaeche = 0;
    if (RadioButton2->Checked == true)
        Schaltflaeche = 1;
    if (RadioButton3->Checked == true)
        Schaltflaeche = 2;
    if (RadioButton4->Checked == true)
        Schaltflaeche = 3;
    if (RadioButton5->Checked == true)
        Schaltflaeche = 4;
    if (RadioButton6->Checked == true)
        Schaltflaeche = 5;
    if (RadioButton7->Checked == true)
        Schaltflaeche = 6;
    
    // Ende Definition der Schaltflaechen
    
    //Definition des Bildes:
    if (RadioButton8->Checked == true)
        Bild = 16;
    if (RadioButton9->Checked == true)
        Bild = 32;
    if (RadioButton10->Checked == true)
        Bild = 48;
    if (RadioButton8->Checked == true)
        Bild = 64;
    //Ende Definition
    
    //Du brauchst also 8 RadioButtons. Sonst kriegste ein paar fehler.
    
    Meldung = Edit1->Text;
    Ueberschrift = Edit2->Text;
    Application->MessageBox(Meldung.c_str(),Ueberschrift.c_str(),Schaltflaeche + Bild);
    

    Hope that helps!



  • Dann benennst du deine RadioButtons wie folgt:

    RadioButton1: OK
    RadioButton2: OK | Abbrechen
    RadioButton3: Wiederholen | Abbrechen | Ignorieren
    RadioButton4: Ja | Nein | Abbrechen
    RadioButton5: Ja | Nein
    RadioButton6: Wiederholen | Abbrechen
    RadioButton7: Wiederholen | Abbrechen | Weiter

    RadioButton8: "X"
    RadioButton9: "?"
    RadioButton10: "!"
    RadioButton11: "Info"

    Natürlich kannst du das noch schön mit Bildern machen. Aber nur, dass du da nen Überblick hast.

    Übrigens: Konvertierung von String nach Char geht mit .c_str(). Bsp: Meldung.c_str()



  • Du programmierst doch sicher auch VisualBasic oder?

    if CheckBox1.Checked = true then
    🙂
    End if

    In C++: ==



  • OK!
    Jetzt bin ich aufgeflogen 😃
    Ich steige gerade von VB zu C++ um und tue mich etwas schwer mit der sprache (besoners mit den klammern für anfang und ende) 🙄



  • Naja warum nicht!
    Jeder Profi von hier war auch mal Anfänger in C++. 😉



  • @Andist

    lass den quatsch mit den zahlwerten bei der messagebox einstellung. kein schwein weiss in nem halben jahr mehr was 64 bedeutet. aussagekräftige defines (MB_ICONQUESTION, MC_ICONERROR, MB_YESNOCANCEL usw...) gibt es aus genau diesem grund!



  • Ja natürlich. Klar stimmt das. Ich habs halt nur noch nie so gelernt.
    Ich konnte mir Zahlen schon immer besser als Abkürzungen merken.



  • Vielen vielen Dank für die hilfe!
    Es funktioniert jetzt Einwandfrei.

    Nochmal Danke
    🙂 🙂 🙂


Anmelden zum Antworten