![]() |
Zahl in Edit Feld eingeben
Hallo nochmal.
Ich habe ein kleines Programm geschrieben, in dem anfangs in einem edit-Feld eine Zahl eingegeben werden muss. Jetz möchte ich aber, dass die Zahl nicht größer als 50 sein darf. Was kann ich tun, damit bei Eingabe größerer Zahlen die Routine nicht durchläuft, sondern der Focus im edit-feld bleibt und eine Zahl zwischen 0 und 50 eingegeben werden muß? Vielen Dank für eure Hilfe. |
Re: Zahl in Edit Feld eingeben
Könnte man im Change-Event abprüfen
|
Re: Zahl in Edit Feld eingeben
Hallo,
vieleicht kann ich dir damit weiterhelfen.
Delphi-Quellcode:
PS: Ich hoffe ich konnte dir helfen.
var i : Integer;
begin // Zahl in Variable einlesen i:=StrToInt(Edit1.Text); // Prüfen, ob Zahl größer 50 if i > 50 then begin Edit1.SetFocus; end else begin // Was hier passieren soll, liegt in deinem ermessen end; end; // MFG Christian18 |
Re: Zahl in Edit Feld eingeben
Alternativ könntest du auch die Komponente TSpinEdit benutzen. Das ist eine Art Edit, in das nur Zahlen eingegeben werden können. Der Breich ist dabei einstellbar.
|
Re: Zahl in Edit Feld eingeben
Hallo Christian,
dein Tip hat funktioniert. Vielen Dank dafür. herzliche Grüße von rambospike |
Re: Zahl in Edit Feld eingeben
und wie kann ich festlegen, dass nur Zahlen eingetragen werden ohne das SpinEdit? Weil hab das irgendwie in meinem Delphi 7 nicht drin :)
|
Re: Zahl in Edit Feld eingeben
im Ereignis onKeyPress des Editfeldes
kannst Du alle key abfangen die ungleich 0-9 sind.
Delphi-Quellcode:
Grüße
if not (key in ['0'..'9',#8]) then
key := #0; Klaus |
Re: Zahl in Edit Feld eingeben
Hi,
Auch nicht unter Beispiele (Samples)? Dann kuck mal unter Win32, da gibt es ein UpDown, wo du unter Associate z. B. ein Edit angeben kannst. Damit kann man den Eingabebereich auch beschränken, außerdem sieht das viel geiler aus. Eventuell noch was kosmetisches, falls man doch ABC oder eine falschgroße Zahl* eingibt
Delphi-Quellcode:
Zu dem Beitrag vor mir in dem roten Rahmen: Man sollte zumindest - noch erlauben.
procedure TForm1.Edit1Exit(Sender: TObject);
begin Edit1.Text := IntToStr(UpDown1.Position); end;
Delphi-Quellcode:
Mfg
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin if not (key in ['0'..'9', #8, '+', '-']) then key := #0; end; FAlter *) Geiler Neologismus! |
Re: Zahl in Edit Feld eingeben
Zitat:
Zitat:
Klaus |
Re: Zahl in Edit Feld eingeben
bzw gibts doch :P
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:56 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz