![]() |
Objektinspektor: Interne Komponente für andere Komponenten zugänglich machen?
Ich habe einen Wrapper für eine TQuery geschrieben. Das Grundgerüst sieht so aus:
Delphi-Quellcode:
Ich würde nun gerne zur Entwurfszeit ein entsprechendes TMyQuery Objekt mit einem TDataSource Objekt verbinden. Zur Laufzeit geht das einfach mittels:
type
TMyQuery = class(TComponent) private FQuery: TQuery; function GetDataSet: TDataSet; published public constructor Create(AOwner: TComponent); override; destructor Destroy; override; published property DataSet: TDataSet read GetDataSet; end; procedure Register;
Code:
Wenn ich aber versuche, zur Entwurfszeit im Objekt-Inspektor in die DataSource.DataSet Eigenschaft "MyQuery.DataSet" zu schreiben, erhalte ich eine "Invalid property error" Fehlermeldung. Gibt es eine Möglichkeit die TMyQuery.DataSet Eigenschaft zu registrieren, so daß sie im Objektinspektor in der Drop-Down-Liste der TDataSource.DataSet Eigenschaft erscheint?
DataSource.DataSet := MyQuery.DataSet;
|
AW: Objektinspektor: Interne Komponente für andere Komponenten zugänglich machen?
Deine Property ist ja auch ReadOnly, Du wirst also einen Setter schreiben müssen.
|
AW: Objektinspektor: Interne Komponente für andere Komponenten zugänglich machen?
Zitat:
|
AW: Objektinspektor: Interne Komponente für andere Komponenten zugänglich machen?
Achso, sry, ich hatte das andersherum verstanden. Ich glaube nicht, dass das geht, da AFAIK Delphi nur die Komponenten vom entsprechenden Typ listet, die auch published sind.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:15 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