![]() |
Frage: Prozedur auf aktuelles Editfeld zugreifen lassen.
Hallo Leute,
Ich hab eine Frage zu Delphi. Ich habe an die 40 Editfelder, nun wollte ich um nicht bei jedem Editfeld den selben Quelltext zu machen, eine Prozedur erstellen, welche auf das Aktuelle Editfeld zugreift (Bei OnChange) und dann eben den Befehl ausführt. Also anstatt
Delphi-Quellcode:
sondern
if ELK1.Text = 0 Then...
Delphi-Quellcode:
Also ist meine Frage nun wie ich es schreiben muss das er wenn er die Prozedur für ien Editfeld ausführt das aktuelle erkennt.
if {aktuelles Editfeld}.Text = 0 Then...
mfg Sudrow Mein aktueller Quelltext für 1 Editfeld sieht so aus:
Delphi-Quellcode:
procedure THaupt.ELK1Change(Sender: TObject);
begin try if ELK1.Text = '' then Begin Km0 := Km0 - 1; E0K.Text := inttostr(Km0); End else try If (strtoint(ELK1.Text) >= 0) and (strtoint(ELK1.Text) <= 15) then Begin If strtoint(ELK1.Text) < 5 then Begin ELK1.Font.Color := clred; End else ELK1.Font.Color := clblack; if (strtoint(ELK1.Text) = 0) or (ELK1.Text = '') then Begin ELK1.MaxLength := 1; Km0 := Km0 + 1; E0K.Text := inttostr(Km0); End else Begin Km0 := Km0 - 1; E0K.Text := inttostr(Km0); ELK1.MaxLength := 2; End; End Else Begin MessageDlg('Der Wert muss zwischen 0 und 15 Punkten liegen.', mtError, [mbOK], 0); ELK1.Clear; End; except MessageDlg('Bitte einen gültigen Wert eingeben.', mtError, [mbOK], 0); ELK1.Clear; end; except end; end; |
Re: Frage: Prozedur auf aktuelles Editfeld zugreifen lassen.
Du must einfach den Sender, natürlich auf TEdit gecastet, benutzen, und für alle Edits das gleiche Ereignis eintragen.
|
Re: Frage: Prozedur auf aktuelles Editfeld zugreifen lassen.
Hi,
Wenn ich dich richtig verstanden habe, dann geht das so:
Delphi-Quellcode:
oder
if (Sender as TEdit).Text = '' then
//..
Delphi-Quellcode:
if TEdit(Sender).Text = '' then
//.. |
Re: Frage: Prozedur auf aktuelles Editfeld zugreifen lassen.
Ersetzte
Delphi-Quellcode:
durch
ELK1
Delphi-Quellcode:
(Sender as TEdit)
|
Re: Frage: Prozedur auf aktuelles Editfeld zugreifen lassen.
Wunderbar, ich danke allen die so schnell geantwortet haben.
Würde doch nur alles so schnell gehen. Dankeschön. mfg Sudrow PS: Es klappt.^^ |
Re: Frage: Prozedur auf aktuelles Editfeld zugreifen lassen.
Das erste (ein weicher Cast) ist, wenn ich mich nicht irre, besser. Das zweite ist eher zu vermeiden, da es ein harter Cast ist.
|
Re: Frage: Prozedur auf aktuelles Editfeld zugreifen lassen.
Wenn man vorher den Typ abprüft, kann man auch einen harten Cast durchführen
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:43 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