Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Die Delphi-IDE (https://www.delphipraxis.net/62-die-delphi-ide/)
-   -   Objektinspektor: Interne Komponente für andere Komponenten zugänglich machen? (https://www.delphipraxis.net/153800-objektinspektor-interne-komponente-fuer-andere-komponenten-zugaenglich-machen.html)

dkoehler 16. Aug 2010 18:31

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:
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;
Ich würde nun gerne zur Entwurfszeit ein entsprechendes TMyQuery Objekt mit einem TDataSource Objekt verbinden. Zur Laufzeit geht das einfach mittels:
Code:
DataSource.DataSet := MyQuery.DataSet;
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?

DeddyH 16. Aug 2010 18:40

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.

dkoehler 16. Aug 2010 18:56

AW: Objektinspektor: Interne Komponente für andere Komponenten zugänglich machen?
 
Zitat:

Zitat von DeddyH (Beitrag 1042607)
Deine Property ist ja auch ReadOnly, Du wirst also einen Setter schreiben müssen.

Die Property soll ja auch nicht verändert werden, sie soll nur referenziert werden können.

DeddyH 17. Aug 2010 09:42

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