![]() |
Komponentenbau: Probleme mit dem Objektinspektor
Hallo,
Ich bin grad am entwickeln einer Komponente, und diesbezüglich hab ich noch einige Probleme in Bezug auf den Objektinspektor. 1. In meiner Komponente werden im Konstruktor weitere Klassen erzeugt. Als Parameter benötigen diese Klassen Initialisierungswerte die in der Komponente vorkonfiguriert werden können (durch Published Propertys). Ich reich die Werte also durch. Das Problem ist jetzt die Aufruf-Reihenfolge. Zuerst wird beim Starten des Programms der Konstruktor meiner Komponente aufgerufen und die Child-Klassen mit den Default-Werten des Konstruktors initialisiert. DANNACH erst (is ja auch nachvollziehbar, aber eben ein Problem) werden die im Objektinspektor konfigurierten Werte meiner Kompo zugewiesen. Das Problem ist jetzt folgendes: Ich muss meinen "Child-Klassen" der Komponente diese Änderung natürlich mitteilen. Leider gibs kein Event um das abzufangen oder ähnliches wovon ich wüsste :( Set Methoden meiner Published Eigenschaften werden komischerweise durch den Objektinspektor auch nicht ausgelöst. Was kann man da machen? Hatte die dumme Idee n Timer im Konstruktor einzubaun der dann nach 50ms oder so die Werte nochmal setzt aber das is irgendwie Schwachsinn... 2. Problem: Ist eher optischer Natur. Standardverhalten vom Objektinspektor is ja bekannterweise dass er die Defaultwerte von Eigenschaften in Normaler Schrift zeichnet, und sobald diese geändert werden, werden sie fett dargestellt. Blöderweise erkennt er meine im Konstruktor zugewiesenen Werte nicht als Defaultwerte, weshalb eigene Eigenschaften der Klasse immer Fett dargestellt werden :( Wer kennt sich damit aus? Meine Suche blieb leider erfolglos :/ BTW: für Delphi7 :) |
Re: Komponentenbau: Probleme mit dem Objektinspektor
wenn deine Komponente SetMethoden hat werden diese eigentlich auch aufgerufen. Wenn dem nicht so ist scheinst du irgendwas falsch gemacht haben und da hilft nur der quellcode damit wir dir helfen können.
|
Re: Komponentenbau: Probleme mit dem Objektinspektor
grmpflprmpf, ja hattest recht war ein Fehler drin, Methodenname war falsch kopiert :P
Immer bei solchen Minifehlern schreib ich Monsterposts, Mist :) Aber danke schonmal. Allerdings ist 2. immernoch aktuell ;) |
Re: Komponentenbau: Probleme mit dem Objektinspektor
achso, zweitens hatte ich überlesen. Damit die Werte als Standardwerte erkannt werden musst du die Standardwerte auch angeben.
Delphi-Quellcode:
du kannst auch stored verwenden, das hat den vorteil das der Standardwert per Funktionsaufruf bestimmt werden kann, aber auch den Nachteil das du mehr tippen musst.
property Xyz: Integer read fxyz write fxyz default DeinStandardWert;
|
Re: Komponentenbau: Probleme mit dem Objektinspektor
besten dank, genau was ich gesucht hab :)
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:13 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