Delphi-PRAXiS

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 Neue TPanel-abgeleitete Komponente zeigt TShape nicht an (https://www.delphipraxis.net/142255-neue-tpanel-abgeleitete-komponente-zeigt-tshape-nicht.html)

susi59 24. Okt 2009 18:20


Neue TPanel-abgeleitete Komponente zeigt TShape nicht an
 
Hallo,

ich entwickle eine neue Komonente, die ich von TPanel ableite. Damit ich die Umrandung besser hinkriege, möchte ich eine TShape-Komponente nutzen. Diese wird während der create-Procedure erstellt.

Leider wird sie nicht angezeigt!
Die eingeschaften lassen sich im OI bearbeiten, aber sehen kann ich den Rahmen nicht.

Was habe ich vergessen bzw. was ist da falsch ?

Der Source-Auszug:

type
TMyPanel = class(TPanel)
private
FBorder:TShape;

protected
{ Protected-Deklarationen }
procedure Notification(AComponent:TComponent; Operation:TOperation); override;

public
{ Public-Deklarationen }
Constructor Create(AOwner:TComponent); override;
destructor Destroy; override;
published
property Border: TShape read FBorder write FBorder;

end;

procedure Register;

implementation

procedure Register;
begin
RegisterComponents('Zusätzlich', [TMyPanel]);
end;

{ TMyPanel}
constructor TMyPanel.Create(AOwner: TComponent);
begin
inherited;
Color:={clWhite}$00FFFFFF;
Ctl3D:=False;
ParentCtl3D:=False;
BevelOuter:=bvNone;
BevelKind:=bkFlat;
BevelInner:=bvNone;
TabStop:=True;
Font.Size:=Size Div 2;

FBorder:=TShape.Create(Self);
FBorder.Top:=2;
FBorder.Left:=2;
FBorder.Width:=20;
FBorder.Height:=20;
FBorder.BringToFront;
end;

destructor TMyPanel.Destroy;
begin
FBorder.Free;
inherited;
end;


end.



Gruß Susi

fkerber 24. Okt 2009 18:25

Re: Neue TPanel-abgeleitete Komponente zeigt TShape nicht an
 
Hi!

Verwende bitte [delphi]-Tags, um den Code lesbarer zu gestalten!
Vielen Dank!


Liebe Grüße,
Frederic

DeddyH 24. Okt 2009 19:41

Re: Neue TPanel-abgeleitete Komponente zeigt TShape nicht an
 
Und zum Thema: füg mal im Konstruktor eine Zeile ein.
Delphi-Quellcode:
...
FBorder:=TShape.Create(Self);
FBorder.Parent := Self;
...
Das müsste es eigentlich gewesen sein.


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:34 Uhr.

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