![]() |
Re: .Lines in einer geerbten TRichEdit ändern
Zitat:
Was geht und was nicht? |
Re: .Lines in einer geerbten TRichEdit ändern
Mir ist noch aufgefallen, daß ich den Destructor vergessen habe. Denn alle Objekte, die man manuell erzeugt, sollte man auch manuell freigeben.
Delphi-Quellcode:
destructor TPRichEdit.Destroy;
begin FMyLines.Destroy; inherited Destroy; end; |
Re: .Lines in einer geerbten TRichEdit ändern
also ich hab jetzt mal deine Kompo installiert, aber obwohl ich sie installiert hab will er immer die unit in uses implentieren, ausserdem kann er sie in den Uses nit finden...
|
Re: .Lines in einer geerbten TRichEdit ändern
ääähm das problem hab ich jetzt soweit geköst, also es funktioniert alles, aber wenn ich jetzt die function Add überschreiben will geht des irgendwie nit:
Delphi-Quellcode:
warum geht des nit? ich krieg beim ausführen immer ne EAccesViolation...
type {...}
public //function AddLines(const S:string): integer; function Add(const S:string): integer; override; {...} implementation {...} function TColoredStrings.Add(const S:string): integer; begin showmessage(S); end; |
Re: .Lines in einer geerbten TRichEdit ändern
Bei mir nicht, habe aber auch das
Delphi-Quellcode:
weggelassen.
override;
|
Re: .Lines in einer geerbten TRichEdit ändern
warum weglassen? dann wirds doch gar nit überschrieben... bei mir gehts aber auch ohne override nit... genau der ngleiche fehler
|
Re: .Lines in einer geerbten TRichEdit ändern
Weil man es IMO nicht benötigt.
|
Re: .Lines in einer geerbten TRichEdit ändern
was meinst du mit nicht benötigt?? warum gibts das Schlüsselwort dann??
aber auch ohne
Delphi-Quellcode:
gehts nit
override
|
Re: .Lines in einer geerbten TRichEdit ändern
Stell noch mal den Code der Unit ein.
|
Re: .Lines in einer geerbten TRichEdit ändern
Delphi-Quellcode:
unit PRichEdit;
interface uses SysUtils, Classes, Controls, StdCtrls, ComCtrls, Dialogs; type TColoredStrings = class(TStringList) private { Private-Deklarationen } protected { Protected-Deklarationen } public function AddLines(const S:string): integer; function Add(const S:string): integer; { Public-Deklarationen } published { Published-Deklarationen } end; TPRichEdit = class(TRichEdit) private { Private-Deklarationen } FMyLines: TColoredStrings; protected { Protected-Deklarationen } public constructor Create( AOWner: TComponent); destructor Destroy; { Public-Deklarationen } published { Published-Deklarationen } property Lines: TColoredStrings read FMyLines write FMyLines; end; procedure Register; implementation procedure Register; begin RegisterComponents('Beispiele', [TPRichEdit]); end; function TColoredStrings.AddLines(const S:string): integer; begin showmessage(S); end; function TColoredStrings.Add(const S:string): integer; begin showmessage(S); end; constructor TPRichEdit.Create(AOWner: TComponent); begin inherited Create( AOwner); FMyLines := TColoredStrings.Create; end; destructor TPRichEdit.Destroy; begin FMyLines.Destroy; inherited Destroy; end; end. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:24 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