Textbox: Befehl und Int auslesen



  • Hallo!

    Ich erstelle gerade ein Win-Form-Anwendung mit Visual C++ 2005 Express Edition.
    Dort wollte ich eine Textbox auslesen, die auf einen Befehl zusammen mit einem Int-Wert wartet.

    Z.B.: geradeaus 3 oder: links 5

    Gibt es eine einfache Umsetzung meines Problems, dass ich erkenne welcher Befehl zusammen mit welchem Int eingegeben wurde? Oder wäre es hier sinnvoller (oder einfacher) zwei Textboxen zu spendieren und die Sachen getrennt abzufragen?



  • String::Split(" ") !?
    Du kannst natürlich auch RegEx verwenden...



  • Ok, super danke das klappt!
    Nur leider stehe ich jetzt vor dem nächsten Problem:
    Die Zahl steht jetzt bei mir in befehl[1], wie bekomme ich es hin, dass diese Zahl als z.B. char zahl; abgespeichert wird und nicht mehr in diesem String??

    befehl[1] ist ein System::String ^ und eine direkte Möglichkeit zum umwandeln hab ich nicht gefunden... Ich habe nur befehl[1]->ToCharArray gefunden, aber ich glaube das hilft mir hier auch nicht weiter.

    Gruß Malleus



  • Convert::ToChar(string^ str);

    Ich denke das ist was du suchst!

    MFG
    Dappeljuh



  • int zahl = int::Parse(befehl[1]);
    


  • int zahl  = System::Convert::ToInt32(split_befehl[1]);   // funktioniert einwandfrei!
    int zahl = int::Parse(befehl[1]);                        // funktioniert nicht
    

    Bei dem zweiten Befehl kommt folgende Fehlermeldung:

    error C2665: "System::Int32::Parse": Durch keine der 4 Überladungen konnten alle Argumenttypen konvertiert werden.
    

    Aber trotzdem danke an euch beide für die Hilfe! Der erste Befehl erfüllt allen Anschein nach seinen Zweck bestens!!



  • Naja, Du solltest auch die gleiche Variable dafür verwenden!

    int::Parse(split_befehl[1]);
    

    Und zweitens darfst Du keinen Variablennamen zweimal deklarieren!


Anmelden zum Antworten