Entwickler-Ecke
Delphi Language (Object-Pascal) / CLX - Fehler bei keiner Eingabe im TEdit
Sakuja - Sa 22.08.09 21:33
Titel: Fehler bei keiner Eingabe im TEdit
Wir haben die folgende Prozedur erstellt und haben nun nen kleines Problem...
Sobald ich ein Feld weiter gehe, ohne eine Eingabe in einem Edit zu machen, schmeißt er mich raus und sagt:
"ProjectRBG.exe Raised exception class EConvertorError with message '' 'is not avalid integer value'."
Ich verstehe aber dann nicht, wieso er das nicht in allen Edits macht, sondern wieso bei einigen diese Prozedur möglich ist, obwohl sie alle gleich sind.
Danke!
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11:
| procedure TFormRBG.EditAusAuf1Exit(Sender: TObject); begin if not (TEdit(Sender).text = '') then begin if (strtoint(TEdit(Sender).text) = 0) then begin TEdit(Sender).text := #0; ShowMessage ('Keine 0 eingeben!!!') end; end; end; |
Moderiert von
Narses: Delphi-Tags hinzugefügt
Delete - Sa 22.08.09 21:51
Logisch. "Nichts" ist ja auch keine gültige Ganzzahl.
Sakuja - Sa 22.08.09 22:02
Aber das ist ja eben schon ausgeschlossen worden mit der vorherigen "if not"-Bedingung. Deswegen dürfte dort ja eben NICHT dieses Problem auftreten.
jaenicke - Sa 22.08.09 22:40
Wenn da ein Leerzeichen drin steht, schon, denn das schließt du ja leider nicht aus...
Wie wäre es mit Trim oder noch viel besser mit TryStrToInt?
Tilman - So 23.08.09 00:51
@Sakuja bei mir funktioniert dein Code und es kommt keine Exception. Die Frage wäre wirklich was eigentlich in dem Edit drin steht, bzw. ob definitiv ausgeschlossen werden kann dass da nicht ein Leerzeichen drinsteht. Evtl. könntest du etwas mehr Code posten.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!