Announcement

Collapse
No announcement yet.

ist kein gültiger Integerwert

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • ist kein gültiger Integerwert

    Hallo,

    mit unten aufgeführter procedure erreiche ich das nur Werte in einem bestimmten Bereich
    eingegeben werden können. Hat man einen falschen Wert eingegeben so erscheint eine
    Fehlermeldung. Das ist alles OK. Löscht man aber nun den falschen Wert im Edit-Feld, so
    kommt die Ausnahmefehlermeldung. '' ist kein gültiger Integerwert. Ich möchte diese
    Fehlermeldung aber vermeiden vielleicht kann mir jemand sagen ob und wie das möglich
    ist. Außerdem möchte ich das nach der von mir erstellten Fehlermeldung der Wert im
    Edit-Feld wieder wie bei der Eingabe unterlegt ist.

    Vielen Dank für Hilfe

    procedure TZahlenEin.Edit1Change(Sender: TObject);

    var

    Zahl1 :Integer;

    begin

    Zahl1 := StrToInt(ZahlenEin.Edit1.Text);

    if (Zahl1 < 1) or (Zahl1 > 49) then

    begin

    ShowMessage('Du kannst weder nur 0 noch eine Zahl über 49 eingeben');

    end

    else begin

    Form1.Edit1.Text:=ZahlenEin.Edit1.Text;

    end;

    end;

    Gruß

    ph

  • #2
    beim Editfeld schreibst du im Ereignis ONCHANGE: {direkt nach dem Beginn der Prozedur}<br>
    if edit1.text=' ' then {strich, space, strich} <br>
    begin <br>
    edit1.text='1'; {oder so was} <br>
    {oder du gibst eine Fehlermeldung aus und verlässt die <br>
    {Prozedur mit EXIT} <br>
    end; <br>
    <br>
    Gruss <br>
    Sasch

    Comment


    • #3
      Hi

      Nutze StrToIntDef(Edit1.Text, -1).

      Gruß Hage

      Comment


      • #4
        Möchte mich herzlichst bedanken

        p

        Comment

        Working...
        X