Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   gesicherte Eingade über TEdit (https://www.delphipraxis.net/122440-gesicherte-eingade-ueber-tedit.html)

BAMatze 16. Okt 2008 07:32


gesicherte Eingade über TEdit
 
Hallo,

hab mal wieder ein Problem. Habe mir eine Edit-Komponente geschrieben, in der nur Zahlen, Komma und Minuszeichen zugelassen sind. Jetzt kann allerdings noch Schrott wie: " -," oder " -- " oder oder oder eingegeben werden. Ich möchte jetzt eventuell über strtoint überprüfen ob in der Edit-Komponente wirklich ein sinnvoller Eintrag (eine Gleitkommazahl) steht. Hoffe jemand kann mir einen Tip geben, wie ich diese Überprüfung überprüfung durchführen kann.

Vielen Dank

BAMatze

iKilledKenny 16. Okt 2008 08:09

Re: gesicherte Eingade über TEdit
 
Analog zu
Delphi-Quellcode:
StrToInt
gibts
Delphi-Quellcode:
StrToFloat
. Besser ist aber
Delphi-Quellcode:
Val (string, value, code);
, damit kannst du vor beim Umwandeln überprüfen, ob es ein korrekter "numerischer" String ist ohne eine Exception abfangen zu müssen.

Luckie 16. Okt 2008 08:12

Re: gesicherte Eingade über TEdit
 
Zitat:

Zitat von BAMatze
hab mal wieder ein Problem. Habe mir eine Edit-Komponente geschrieben, in der nur Zahlen, Komma und Minuszeichen zugelassen sind. Jetzt kann allerdings noch Schrott wie: " -," oder " -- " oder oder oder eingegeben werden.

Nicht wenn du es richtig implementiert hast und das hast du anscheinend nicht. Such mal hier im Forum, wie man das richtig implementiert.

Namenloser 16. Okt 2008 09:35

Re: gesicherte Eingade über TEdit
 
Zitat:

Zitat von iKilledKenny
Analog zu
Delphi-Quellcode:
StrToInt
gibts
Delphi-Quellcode:
StrToFloat
. Besser ist aber
Delphi-Quellcode:
Val (string, value, code);
, damit kannst du vor beim Umwandeln überprüfen, ob es ein korrekter "numerischer" String ist ohne eine Exception abfangen zu müssen.

Außerdem gibt es noch TryStrToInt bzw. TryStrToFloat.

hoika 16. Okt 2008 09:39

Re: gesicherte Eingade über TEdit
 
Hallo,

und den Test führst du mindestens im OnChange aus.


Heiko

BAMatze 17. Okt 2008 12:46

Re: gesicherte Eingade über TEdit
 
Danke hat funktioniert.

BAMatze

Sven M. 17. Okt 2008 13:04

Re: gesicherte Eingade über TEdit
 
Zitat:

Zitat von NamenLozer
Zitat:

Zitat von iKilledKenny
Analog zu
Delphi-Quellcode:
StrToInt
gibts
Delphi-Quellcode:
StrToFloat
. Besser ist aber
Delphi-Quellcode:
Val (string, value, code);
, damit kannst du vor beim Umwandeln überprüfen, ob es ein korrekter "numerischer" String ist ohne eine Exception abfangen zu müssen.

Außerdem gibt es noch TryStrToInt bzw. TryStrToFloat.

Und dann gibt's auch noch StrToFloatDef...;-)

oli_a 4. Dez 2008 14:26

Re: gesicherte Eingade über TEdit
 
Zitat:

Zitat von BAMatze
Danke hat funktioniert.

BAMatze

Hallo, könntest du die funktionierende Lösung bitte mal posten? Ich hab auch grad damit zu tun.


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:05 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz