Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Wert in Feld richtig deklarieren (https://www.delphipraxis.net/98527-wert-feld-richtig-deklarieren.html)

kuba 28. Aug 2007 17:03


Wert in Feld richtig deklarieren
 
Hallo,

kann mir jemand sagen, wie ich ein Feld deklarieren muss damit ein bestimmter Wert nicht über bzw. unterschritten wird ? Ich möchte dass man in ein Feld z.B. eine Uhrzeit schreibt, oder eine IP-Adresse. Es soll verhindert werden, dass der Benutzer falsche Werte in das Feld eingibt. Bei Falscheingabe soll der "alte" Wert verwendet werden.

Ich weiss dass es irgendwo hier im Forum stehen muss, finde es aber nicht.

KUBA

mkinzler 28. Aug 2007 17:29

Re: Wert in Feld richtig deklarieren
 
Was meinst du mit Feld?
Schau mal nach TMaskEdit

kuba 28. Aug 2007 17:39

Re: Wert in Feld richtig deklarieren
 
Hy,

vielen Dank, TMaskEdit müsste gehen, wird jedoch komplizierter (aufwändiger) als ich dachte, ich probiers aus ...

KUBA

kuba 28. Aug 2007 17:55

Re: Wert in Feld richtig deklarieren
 
Hallo,

ich habe diese Funktion entdeckt:

Delphi-Quellcode:
function CheckTime (vTime: string): string;
begin
 Result:='';
 try
  Result:=timetostr(strtotime(trim(vTime)));
 except
 end;
end;
Wie kann ich die Eingabe in meinem TEdit/TMaskEdit Feld zurückweisen/wiederholen wenn die Funktion '' zurückliefert ?

Die Funktion selbst scheint ordentlich zu funktionieren, richtige Werte werden akzeptiert, bei falschen Werten stürzt mein Programm ab.

KUBA

kuba 29. Aug 2007 20:38

Re: Wert in Feld richtig deklarieren
 
Endlich hab ich es geschnallt...

beim FormCreate Werte vorbelegen
bei OnKeyPress die Gültigkeit der TastaturEingabe abfragen
bei OK oder Form.Close den Wert prüfen und ggf. übergeben

TMaskEdit ist auch sehr verwirrend, bei Falscheingabe kommt eine Fehlermeldung,
lässt man das Compilierte Programm laufen wird die Falscheingabe nicht akzeptiert.
Das war für mich schon etwas verwirrend, aber jetzt hab ich´s

:zwinker:


KUBA

kuba 29. Aug 2007 20:39

Re: Wert in Feld richtig deklarieren
 
Also Checktime erst beim OK oder Form.Close aufrufen, ggf. Form nicht schliessen, Fehlermeldung, oder sonstiges ...

KUBA

alzaimar 30. Aug 2007 06:50

Re: Wert in Feld richtig deklarieren
 
Zitat:

Zitat von kuba
TMaskEdit ist auch sehr verwirrend, bei Falscheingabe kommt eine Fehlermeldung,
lässt man das Compilierte Programm laufen wird die Falscheingabe nicht akzeptiert.
Das war für mich schon etwas verwirrend, aber jetzt hab ich´s

Das ist keine Fehlermeldung, sondern eine 'Exception', also eine Ausnahme. Wenn Du in den Debugger-Optionen das Anhalten bei einer Exception ausschaltest, dann wird sich dein Programm in der Delphi-IDE genauso verhalten, wie gewünscht.

kuba 30. Aug 2007 15:29

Re: Wert in Feld richtig deklarieren
 
Und das hat mich so verwirrt (weil ich keine Ahnung habe...), ihr seid so gut zu mir !! DANKE

KUBA :thumb:


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