![]() |
max. wert von editboxen
Wie kann ich in Delphi den max. bzw. minimalen Wert von editboxen(es sind ca. 50) angeben?
Beim Eintippen einer zu großen bzw. zu kleinen Zahl soll er eine Warnung ausgeben bzw. diejeweilige Box rot einfärben! Wie bekomme ich das möglichst schnell hin? Vielen Dank im voraus!!! |
Re: max. wert von editboxen
Reagiere uaf Eingabe und Teste die Grenzen ab.
|
Re: max. wert von editboxen
Und wie mache ich das?
|
Re: max. wert von editboxen
Z.B. OnChange oder OnExit mit TryStrToInt oder StrToIntDef in eine Zahl wandeln und prüfen.
|
Re: max. wert von editboxen
Damit kann ich schon etwas anfangen, aber wie lege ich die editbox, bzw. deren "Nummer " variabel fest um nicht 50 selbige Programmabläufe schreiben zu müssen?
|
Re: max. wert von editboxen
Du schreibst das einmalig für das erste Edit und stellst diese Methode im OI für alle Edits ein. Wichtig ist dabei aber, dass Du keine statischen Komponentennamen verwendest, sondern den Sender-Parameter auswertest.
|
Re: max. wert von editboxen
erzeug sie in der laufzeit ?!
Delphi-Quellcode:
var neuesEdit:Tedit;
begin neuesEdit:=TEdit.create(Form1); neuesEdit.bla_bla_bla:=Wert_von_bla_bla_bla; ... end; |
Re: max. wert von editboxen
Über Sender habe ich noch nicht so viel gehört:
Schreibe ich dann eine Prozedur, wie?
Delphi-Quellcode:
trystrtoint(Sender);
if Sender{usw} |
Re: max. wert von editboxen
Ein Beispiel hatte ich doch bereits
![]() |
Re: max. wert von editboxen
Und wie nenn ich die Prozedur dann?
Ich hab mir mal was überlegt:
Delphi-Quellcode:
trystrtoint-->wohin?
procedure TNotifyEvent(Sender: TObject);
begin if Sender is Tedit then begin if TEdit(Sender)<0{???} or TEdit(Sender)>15 then begin Tedit(Sender).Color:=clred; end; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:38 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