![]() |
TRechteck
Ich muss eine klasse TRechteck von Tgraphiccontrol ableitn. Ich soll die methode paint überschreiben
und diese soll dann dafür sorgen dass das rechteck gezeichnet wird. Weiters hat die klasse TRechteck folgende eigenschaften: fuellfarbe und Linienfarbe. bis jetzt hab ich das hier.
Delphi-Quellcode:
Nun wie überschreib ich diese paint methode? und wie sieht es eigentlich mit dem constructor aus?
TRechteck = class(TGraphicControl)
private function GetFuellFarbe: TColor; procedure SetFuellFarbe(const Value: TColor); function GetLinienFarbe: TColor; procedure SetLinienFarbe(const Value: TColor); public property FuellFarbe : TColor read GetFuellFarbe write SetFuellFarbe; property LinienFarbe : TColor read GetLinienFarbe write SetLinienFarbe; end; function TRechteck.GetFuellFarbe: TColor; begin result:= canvas.Brush.Color; end; function TRechteck.GetLinienFarbe: TColor; begin result:= canvas.Pen.Color; end; usw. ... ich hab keine ahnung wie die basisklasse aussieht udn von der hilfe werd ich auch nicht schlau. :( |
Re: TRechteck
Öhm... TGraphicControl.Paint ist doch sogar im Index der Hilfe :stupid: . Der Konstruktor ebenfalls, die Deklaration der zwei kannst du wirklich nicht übersehen.
|
Re: TRechteck
Delphi-Quellcode:
constructor Create(AOwner: TComponent);
protected procedure Paint;override;
Delphi-Quellcode:
procedure TRechteck.Paint;
begin inherited; canvas.tue.was;
Delphi-Quellcode:
Klick mal bei gedrückter steuerungstaste auf den type!
constructor TRechteck.Create(AOwner: TComponent);
var i:integer; begin inherited Create(AOwner); FuellFarbe :=clred; usw. end; |
Re: TRechteck
Der Konstruktor sollte bei Controls unbedingt auch überschrieben werden.
|
Re: TRechteck
ich hab jetzt
Delphi-Quellcode:
später brauch ich dann noch Fhöhe und Fbreite um das rechteck zu zeichnen. aber wenn ich jetzt
procedure TRechteck.paint;
begin inherited; canvas.Rectangle(1,100,2,200); end; paint ausführe kommt eine fehlermeldung. 'Has no parent window' :S |
Re: TRechteck
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:12 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