![]() |
Re: FindComponent auch für property ???
Cool, das funktioniert!!!! :thumb:
Vielen Dank an alle. |
Re: FindComponent auch für property ???
Kaum ist ein Problem gelöst, kommt schon das nächste:
Funktioniert das auch mit einer "Untereigenschaft" ? also z.B.: Label1.Font.Name ???? Dieses Beispiel war ja für Label1.Caption |
Re: FindComponent auch für property ???
Zitat:
"Untereigenschaften" sind auch nur wieder Eigenschaften von Klassen. TLabel.Font ist vom Typ TFont, den Instanz-Zeiger kriegst du ueber Label1.Font, und die Eigenschaft heisst "Name". Funktioniert also gleich wie bei TLabel.Caption ;) greetz Mike |
Re: FindComponent auch für property ???
Du müsstest mit GetObjectProp(Label1,'Font') das Schrift-Objekt ermitteln und dann wieder mit SetStrProp(Font,'Name','Test') setzen.
Delphi-Quellcode:
var
tmpObject: TObject; // TObject da tatsächliche Klasse zur Laufzeit unbekannt ist und auch egal ist begin tmpObject:=GetObjectProp(Label1,'Font'); SetStrProp(tmpObject,'Name','Test); end; |
Re: FindComponent auch für property ???
Ja, das geht!
Danke :thumb: Hab's noch etwas vereinfacht: Das ganze geht auch in einer Zeile und ohne zusätzliche Variable:
Delphi-Quellcode:
Das ganze ändert also die Schriftart von Label1 in Arial,
SetStrProp(GetObjectProp(FindComponent('Label1'), 'Font'), 'Name', 'Arial');
wobei alles nur in Strings übergeben wird! |
Re: FindComponent auch für property ???
Hi, ich bin's nochmal:
Ist es auch irgendwie möglich, den Defaultwert einer property abzufragen? |
Re: FindComponent auch für property ???
Hi!
Was meinst du mit "Default-Wert"? Den Wert den sie beim Start des Programms haben/hatten? Ciao Frederic |
Re: FindComponent auch für property ???
Zitat:
Bzw. den Wert, den eine Property annimmt, wenn nichts an der entspr. Stelle in der dfm-Datei steht. z.B. ist der Defaultwert der Property 'Transparent' eines TLabel FALSE. |
Re: FindComponent auch für property ???
Wie kann man nun allg. den Default-Wert einer Property erhalten?
Ist das überhaupt möglich??? |
Re: FindComponent auch für property ???
Da wird er den wert aus der klasse Lesen oder der Superklasse, wenn die Klasse auch kein Wert vorsieht.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:17 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