![]() |
Edit nach Create leeren
hi
ich hab eigentlich ne ganz simple frage: ich hab mir meine eigene Komponente von TRichEdit abgeleitet und nun möchte ich das das Edit nach dem erstellen geleert wir(clear). Wo muss ich das rein schreiben? Bei Create kann ichs ja nicht machen das das fenster(also das Edit) zu diesem Zeitpunkt nicht erstellt wurde. |
Re: Edit nach Create leeren
Dann mach es doch im Konstruktor der Komponente.
MfG Binärbaum |
Re: Edit nach Create leeren
ist nicht das Create der Constructor? :gruebel:
Delphi-Quellcode:
constructor Tmeinedit.Create(AOwner: TComponent);
begin inherited Create(AOwner); end; |
Re: Edit nach Create leeren
Ja, versuchs mal nach dem Inherited. Sollte eigentlich funktionieren.
Greetz alcaeus |
Re: Edit nach Create leeren
das war ja auch mein erste gedanke und ich habs probiert...
wenn ichs zur designer zeit dann aufs form ziehem will kommt: "Control has no Parent Window" |
Re: Edit nach Create leeren
Das scheint mir aber nicht wirklich damit zusammenzuhängen. Schmeiß mal die Zeile mit Lines.Clear raus und probier es dann nochmal. Scheint so als würde es da ein anderes Problem geben...
Greetz alcaeus |
Re: Edit nach Create leeren
dann gehts ja....
aber solange es drin ist bekomme ich die fehlermeldung |
Re: Edit nach Create leeren
Zitat:
|
Re: Edit nach Create leeren
Delphi-Quellcode:
unit dddEdit;
interface uses Windows, Messages, SysUtils, Classes, Controls, StdCtrls, ComCtrls, Dialogs, Graphics; type TdddEdit = class(TRichEdit) {...} public { Public declarations } constructor Create(AOwner: TComponent); override; end; procedure Register; implementation procedure Register; begin RegisterComponents('Samples', [TdddEdit]); end; constructor TdddEdit.Create(AOwner: TComponent); begin inherited Create(AOwner); Width := 121; Height := 21; Lines.Clear; end; |
Re: Edit nach Create leeren
Wundert mich irgendwie nicht, dass zu diesem Zeitpunkt (also im Konstruktor) auf Lines nicht zugegriffen werden kann. Wenn man in den Units sieht, wie Lines in TRichEdit (und Vorfahren) implementiert ist ... Da begreife ich nichts von. :cry:
Zur Laufzeit erstellte TRichEdits sind übrigens leer. Nur die zur Designzeit erstellten haben ihren eigenen Namen in der ersten Zeile. Aber das nur so nebenbei. Benutze statt Lines.Clear ein einfachen Text:=''; Das sollte hinhauen. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:16 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 by Thomas Breitkreuz