![]() |
Property strings funktioniert nicht
Hallo,
ich versuche, einer Edit-Komponente eine Stringliste als zusätzliche Property zu verpassen, und das will mir nicht gelingen. Es erscheint zwar der Stringlisteneditor als Property Editor im Objectinspector, aber die Strings, die ich eingebe, bleiben nicht gespeichert. Nach mehreren Versuchen, die Strings eizugeben, erscheint die Fehlermeldung:
Code:
Hier die Komponente, auf das absolute Minimum reduziert:
---------------------------
Fehler --------------------------- TActionBars kann nicht zu TRichEditStrings zugewiesen werden. --------------------------- OK Details >> ---------------------------
Delphi-Quellcode:
Was ist da falsch?
unit TestEdit;
interface uses System.SysUtils, System.Classes, Vcl.Controls, Vcl.StdCtrls; type TTestEdit = class(TEdit) private x: TStrings; public constructor Create(AOwner: TComponent); override; destructor Destroy; override; published property Teststrings: TStrings read x write x; end; procedure Register; implementation constructor TTestEdit.Create(AOwner: TComponent); begin inherited; x:= TStringList.create; end; destructor TTestEdit.Destroy; begin x.Free; inherited; end; procedure Register; begin RegisterComponents('Test', [TTestEdit]); end; end. TStrings generell durch TStringlist zu ersetzen ändert übrigens nichts am Problem. |
AW: Property strings funktioniert nicht
Du lässt ja munter Deine selbst erzeugte Instanz überschreiben. Wie ist es so?
Delphi-Quellcode:
property Teststrings: TStrings read x write SetX;
... procedure TTestEdit.SetX(const Value: TStrings); begin x.Assign(Value); end; |
AW: Property strings funktioniert nicht
Ja, natürlich, so geht es. Danke.
Ich hatte im Hinterkopf, dass bei Listboxen und dergleichen Komponenten eine Zuweisung an die Items Property automatisch in ein assign aufgelöst wird - aber genau das muss man natürlich bei eigenen TStrings via Setter selber machen... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:35 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