![]() |
OnMouseMove-Prozeduren von zur Laufzeit erstellten Objekten
Hallo,
ich habe ein analoges Problem zu folgendem: Angenommen ich wollte zur Laufzeit Labels erstellen, die bei OnMouseMove ihre Schriftgröße verändern, so müsste ich diesen neuen Labels ja in der Eigenschaft OnMousemove eine Prozedur zuordnen, die die Schriftgröße des Labels verändert. Wie ist das aber möglich, wenn die Labels erst zur Laufzeit entstanden sind - wie schaffe ich, dass genau die Schriftgröße von dem mit der Maus überfahrenen Label geändert wird? Falls das noch etwas unklar erscheint präzisiere ich meine Ausführungen gerne noch mal! Herzlichen Dank schon mal fürs Lesen! Treurgebenst, Samufi |
Re: OnMouseMove-Prozeduren von zur Laufzeit erstellten Objek
Hi!
Du brauchst eine "universelle" Methode für das MouseMove - die weist du dann jedem neuen Label zu. Wird sie aufegrufen steckt im Parameter Sender das Control drin, dass den Aufruf ausgelöst hat. Grüße, Frederic |
Re: OnMouseMove-Prozeduren von zur Laufzeit erstellten Objek
Du kannst auch Eigenschaften und Ereignisse zur Laufzeit zuweisen. Schreib dir eine passende Methode und weiß sie zur Laufzeit dem entsprechenden Ereignis zu.
|
Re: OnMouseMove-Prozeduren von zur Laufzeit erstellten Objek
Vielen Dank für die Antworten erst mal!
Dass ich Eigenschaften zur Laufzeit zuweisen kann ist mir im Grunde schon klar - was mir fehlt ist diese universelle Methode. Dass man da etwas mit dem Parameter Sender machen kann habe ich mir schon gedacht. Aber wie genau geht das. Angenommen ich wollte wie im Beispiel die Schriftgröße von einem Label vergrößern:
Delphi-Quellcode:
Ich weiß - so funktioniert das auf keinen Fall. Aber wie müsste das dann richtig aussehen?
procedure TForm1.LabelMouseMove(Sender: TObject);
var Label1:TLabel; begin Label1:=Sender; Label1.Font.Size:=Label.Font.Siz+2; end; |
Re: OnMouseMove-Prozeduren von zur Laufzeit erstellten Objek
Hi!
In der Art könntest du es machen:
Delphi-Quellcode:
with (Sender as TLabel) do
font.Size:=40; Grüße, Frederic |
Re: OnMouseMove-Prozeduren von zur Laufzeit erstellten Objek
Vielen Dank! :dp:
Es funktioniert alles wie gewünscht! |
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:44 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