Delphi-PRAXiS
Seite 4 von 10   « Erste     234 56     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi .Lines in einer geerbten TRichEdit ändern (https://www.delphipraxis.net/71245-lines-einer-geerbten-trichedit-aendern.html)

mkinzler 12. Jun 2006 22:49

Re: .Lines in einer geerbten TRichEdit ändern
 
Zitat:

könnte es sein das meinem TColoredStrings schlicht der constructor fehlt??
Nein da du keine neue Member-Objekte eingefügt hast, ist der geerbte Konstruktor ausreichend. Also beim mir funktioniert die Kompoenente in dem Testprogramm problemlos.
Was geht und was nicht?

mkinzler 13. Jun 2006 06:49

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;

Green 13. Jun 2006 18:07

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...

Green 13. Jun 2006 18:16

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:
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;
warum geht des nit? ich krieg beim ausführen immer ne EAccesViolation...

mkinzler 13. Jun 2006 18:28

Re: .Lines in einer geerbten TRichEdit ändern
 
Bei mir nicht, habe aber auch das
Delphi-Quellcode:
override;
weggelassen.

Green 13. Jun 2006 19:47

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

mkinzler 13. Jun 2006 19:49

Re: .Lines in einer geerbten TRichEdit ändern
 
Weil man es IMO nicht benötigt.

Green 13. Jun 2006 20:03

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:
override
gehts nit

mkinzler 13. Jun 2006 20:05

Re: .Lines in einer geerbten TRichEdit ändern
 
Stell noch mal den Code der Unit ein.

Green 13. Jun 2006 20:06

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 02:21 Uhr.
Seite 4 von 10   « Erste     234 56     Letzte »    

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz