"if" problem mit eingabe durch Edit



  • void __fastcall TForm1::Addition1Click(TObject *Sender)
    {
    if(Edit1->Text == NULL)
    {
    Application->MessageBox("Keine eingabe in Box 1", "Fehler", MB_OK);
    
    }
    else
    {
    Edit3->Text=IntToStr(StrToInt(Edit1->Text) + StrToInt(Edit2->Text));
    Label1->Caption = "+";
    Label2->Caption = "=";
    }
    }
    //---------------------------------------------------------------------------
    

    ich bekomm das irgendwie nicht hin das er mir die msgbox ausgeben soll wenn Nix in der Edit1 eingetreagen wurde.

    wie mach ich das ? kann jemand helfen 🤡



  • Ja kann ich: 😃

    if (Edit1->Text == "") ....
    

    Leerstring nicht NULL! :p



  • Hi,

    if(Edit1->Text == "") ShowMessage("nix drin");
    

    Gruß
    ravel



  • Hi,

    dafür hat AnsiString sogar eine eigen Funktion: 😉

    AnsiString::IsEmpty()
    

    in diesem Fall wäre das:

    if (Edit1->Text.IsEmpty())
    

    Grüße Joe_M.



  • die Frage is nun, was besser und schneller is
    könnte mir fast vorstellen, das der Funkionsaufruf mehr zeit braucht...



  • Guckts euch beide Versionen im Debugger an und ihr werdet sehen 😉


Log in to reply