![]() |
neue Komponente mit drei Controls
Hi,
ich möchte mir eine Komponente basteln, auf der drei Controls (DBEdit, Panel, Button) sind. Dafür leite ich ein Objekt von TCustomPanel ab und lege die Controls als Properties nach aussen.
Delphi-Quellcode:
Im Create des Objekts werden die Controls erstellt. Klappt auch soweit alles wie es soll - mein Problem ist Folgendes:
type
TMyControl = class(TCustomPanel) public FConnectEdit: TDBEdit; FConnectPanel: TPanel; FConnectButton: TButton; constructor Create(AOwner: TComponent); override; destructor Destroy; override; published property ConnectEdit: TDBEdit read FConnectEdit write FConnectEdit; property ConnectPanel: TPanel read FConnectPanel write FConnectPanel; property ConnectButton: TButton read FConnectButton write FConnectButton; end; Wenn ich die neue Komponente auf ein Formular lege, und dann per Objektinspektor an den Eigenschaften der Controls rumstelle, bekomme ich die Veränderungen zur Designzeit zwar zu sehen, aber zur Laufzeit kennt das Programm diese Einstellungen nicht mehr. Kann mir jemand sagen, wo mein Fehler ist? Danke, Mason |
Re: neue Komponente mit drei Controls
Zitat:
PS: Willkommen in der DP :dp: |
Re: neue Komponente mit drei Controls
Zitat:
Zitat:
|
Re: neue Komponente mit drei Controls
Wen es interessiert: ich hab's! :dancer2:
Direkt nach dem Erstellen eines Controls muss die Prozedur SetSubComponent aufgerufen werden, und schon wird alles gut.
Delphi-Quellcode:
constructor Create(AOwner: TComponent);
begin inherited; FConnectEdit := TDBEdit.Create(Self); FConnectEdit.SetSubComponent(true); end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:09 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