Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Edit.Text muss mindestens 1 Zahl haben (https://www.delphipraxis.net/28209-edit-text-muss-mindestens-1-zahl-haben.html)

Äfan 21. Aug 2004 02:46


Edit.Text muss mindestens 1 Zahl haben
 
Hallöle,

Ich benötige mal wieder euere Hilfe. Ich mache so einen Farbwähler mit 3 Trackbars und 3 Edits. Wenn man den wert in einer Edit ändert wird der Wert gleich in der Trackbar dargestellt. Wenn der User aber garnichts in das Edit einträgt, gibt es eine Fehlermeldung und der Laufzeitprozess wird abgebrochen. Wie kann ich es einstellen bzw. unterbinden das garnichts in der Edit steht ?

Trouble_Maker 21. Aug 2004 03:02

Re: Edit.Text muss mindestens 1 Zahl haben
 
war schon lang hier nich mehr aktiv aber ein bisschen Delphi kann ich glaub ich noch ;-)

also:

if edit1.text = ' ' then showmessage('Das Edit-Feld darf nicht leer sein');


hoffe das ist das was du gemeint hast


cu Trouble_Maker

Äfan 21. Aug 2004 03:15

Re: Edit.Text muss mindestens 1 Zahl haben
 
Das Problem ist das, dass
Delphi-Quellcode:
Rot.Position := StrtoInt(RotWert.Text);
mit im Block steht. Also sogar wenn ich ne Meldung zeig, gibts ne Fehlermeldung. IF-Then ist doch Wenn-Dann. Gibt auch Wenn nicht-Dann ?

Hansa 21. Aug 2004 03:30

Re: Edit.Text muss mindestens 1 Zahl haben
 
natürlich:

Delphi-Quellcode:
if not ... then

dizzy 21. Aug 2004 03:31

Re: Edit.Text muss mindestens 1 Zahl haben
 
Delphi-Quellcode:
if Edit1.Text <> '' then Rot.Position := StrtoInt(RotWert.Text);
// oder auch:
if not (Edit1.Text = '') then Rot.Position := StrtoInt(RotWert.Text);
// kommt auf's selbe raus, ist aber vernachlässigbar langsamer (würde nie einer merken)
Aber dann bist du noch nicht vor Nicht-Zahlen-Strings geschützt. Aber evtl. findest du das ja selber raus - die Suche dürfte da mannigfaltig Ergebnisse spucken ;)
(Tipp: TryStrToInt bzw. Val, oder man kann auch prüfen, ob jedes einzelne Zeichen im String eine Ziffer ist (Edit1.Text[n] in [ord(0)..ord(9)] -- in etwa)

\\edit: Die not-Variante


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:09 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