![]() |
feststellen ob geklickt ohne Klick-Prozedur
Hi,
Ich habe 40Panels und will herausfinden, welches geklickt wurde. Natürlich könnte ich für jedes die onClick-Procedur festlegen und dann in eine Variable schreiben ob es geklickt wurde, allerdings wäre das bei der Menge sehr aufwändig. Gibt es eine andere Möglichkeit festzustellen, welche geklickt wurde? (so Ereignisprozedur artig - ich weiß nicht ob der Begriff in Delphi anwendbar ist) |
Re: feststellen ob geklickt ohne Klick-Prozedur
Zitat:
(Designzeit: Panels markieren -> Ereignisse -> OnClick -> Doppelklick) |
Re: feststellen ob geklickt ohne Klick-Prozedur
Und wie finde ich dann raus welches Panel es war das geklickt wurde?
|
Re: feststellen ob geklickt ohne Klick-Prozedur
Zitat:
mfG mirage228 |
Re: feststellen ob geklickt ohne Klick-Prozedur
Im OnClick Event gibt es den Parameter Sender. Dieses Objekt hat den Event ausgelöst.
|
Re: feststellen ob geklickt ohne Klick-Prozedur
Sorry, das ich mich vielleicht so dumm anstelle, aber wie kann ich den Namen des Senders in einer Variable speichern?
|
Re: feststellen ob geklickt ohne Klick-Prozedur
Zitat:
z.B. so
Delphi-Quellcode:
mfG
var
CompName: string; begin if (Sender is TComponent) then CompName := TComponent(Sender).Name else CompName := Sender.Classname; // falls es keine Komponente ist end; mirage228 |
Re: feststellen ob geklickt ohne Klick-Prozedur
Sender : TObject
->
Delphi-Quellcode:
So würde ichs machen
var DeinObject : TObject;
procedure TPanel1.Click(Sender : TObject); begin DeinObject := Sender; end; |
Re: feststellen ob geklickt ohne Klick-Prozedur
Zitat:
[edit]Ups... Doppelpost :duck: [/edit] |
Re: feststellen ob geklickt ohne Klick-Prozedur
Zitat:
Wenn man wieder das Panel haben will, muss man halt ![]() mfG mirage228 |
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:52 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 by Thomas Breitkreuz