Moin !
Ich habe da eine sehr primitive Klasse:
Delphi-Quellcode:
{$M+}
unit Recty;
interface
uses Classes, Graphics;
type
TRecty =
Class
private
FX, FY,
// X, Y Position (Left Top)
FW, FH : Integer;
// Width, Height
FScale : Double;
// Scaling ...
FCanvas : TCanvas;
published
constructor Create();
procedure Draw;
property X : Integer
read FX
write FX;
property Y : Integer
read FY
write FY;
property W : Integer
read FW
write FW;
property H : Integer
read FH
write FH;
property Scale : Double
read FScale
write FScale;
property Canvas : TCanvas
read FCanvas
write FCanvas;
end;
implementation
constructor TRecty.Create();
begin
inherited;
Scale := 1.0;
end;
procedure TRecty.Draw;
begin
FCanvas.Rectangle(Trunc(X ),
Trunc(Y ),
Trunc((X+W) * Scale),
Trunc((Y+H) * Scale));
end;
end.
Ich würde gerne dieser Klasse Funktionen wie OnMouseMove, OnMouseDown, ... geben. Kann mir jemand einen Tip geben wie man das am besten anstellt?
Ich kann zwar in meinem Formular wo ich zeichne die entsprechenden Funktionen hinterlegen, aber ich fände es eleganter wenn das die Klasse (sofern das geht) selber übernimmt.
Ziel soll es erstmal sein, dass ich mit gedrückter Maustaste das Rechteck verschieben kann.