Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   in onchange Ereignis rausbekommen woher ? (https://www.delphipraxis.net/187369-onchange-ereignis-rausbekommen-woher.html)

Gege 23. Nov 2015 14:31

in onchange Ereignis rausbekommen woher ?
 
Hallo Leute,

mal eine Frage, ich steh gerade etwas auf den Schlauch ..
wenn ich in einer Prozedur die ich meinetwegen aus 3 verschiedenen edit Feldern bei onchange aufrufe ..
raus bekommen aus welchen Feld die aufgerufen wurde ?

Grund.. ich hab eine Routine die ich bei eigentlich allen Edit's aufrufen möchte .. aber soll sich dann natürlich auf das Feld beziehen von wo sie ausgelöst wurde

Hoffe Ihr versteht was ich meine ..

VG
Gege

Uwe Raabe 23. Nov 2015 14:32

AW: in onchange Ereignis rausbekommen woher ?
 
Im OnChange-Event gibt der Parameter Sender die auslösende TEdit-Instanz an.

Perlsau 23. Nov 2015 14:37

AW: in onchange Ereignis rausbekommen woher ?
 
... und ich glaube gar, daß in allen anderen Ereignisbehandlungen, die ein Sender: TObject als Parameter mitführen, ebenfalls, der Sender über die Variable Sender (warum die wohl Sender heißt, seltsam?) zu ermitteln ist.

Gege 23. Nov 2015 14:40

AW: in onchange Ereignis rausbekommen woher ?
 
Danke für die schnelle Antwort ..
wie frag ich das dann denn aber ab ..

Bsp. ich will in ein Richedit bei eingabe 'u'
es grün färben
z.B die Normale abrage bei onchange vom Richedit1

if lowercase(Richedit1.Text)='u' then Richedit1.Color:=$00ABF986 ;


wie baue ich das dann "variabel ein ? wenn sie von mehreren Editfeldern aufgerufen wird ?

vg
gege

Gege 23. Nov 2015 14:40

AW: in onchange Ereignis rausbekommen woher ?
 
Ja Sender ist TObject .. wie komm ich damit an den Namen ? .. hmm grübel..

mkinzler 23. Nov 2015 14:43

AW: in onchange Ereignis rausbekommen woher ?
 
Delphi-Quellcode:
 ...
  re: TRichEdit;
begin
  ...
  re := (Sender as TRichEdit);
if lowercase(re.Text)='u' then re.Color:=$00ABF986 ;
...

DeddyH 23. Nov 2015 14:43

AW: in onchange Ereignis rausbekommen woher ?
 
Reden wir nun von Edits oder RichEdits? Naja, ein allgemeingültiger Weg wäre z.B.
Delphi-Quellcode:
procedure TDeinForm.DingsChange(Sender: TObject);
begin
  if Sender is Komponentenklasse then
    Komponentenklasse(Sender).MethodeDerKlasse;
end;

Gege 23. Nov 2015 14:50

AW: in onchange Ereignis rausbekommen woher ?
 
Super Danke Euch ..
werde es dann gleich testen :)

vg
Gege

jep funktioniert hervorragend ! THX !!


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