ich würde das eh nicht über die beiden Units machen, das kann man besser in eine machen und auf einer Form.
Wieso alles in einer
Unit? Das ist doch Unfug.
Die Klassen stehen in einer
Unit, die Form steht in einer
Unit.
Die Instanzen der Klassen erzeugt man, indem man die benötigten
Werte übergibt und eben
nicht fest an irgendwelche Instanzen koppelt, um aus diesen Instanzen dann den Wert auszulesen.
Und für die Interaktion übergibt man die Instanz der minimal benötigten Klasse (hier ist ein
TCanvas
ausreichend):
Delphi-Quellcode:
{ Basisklasse zum Zeichnen }
TPaintObject = class abstract
protected
procedure DoPaintOn( ACanvas: TCanvas ); virtual; abstract;
public
procedure PaintOn( ACanvas: TCanvas );
end;
procedure TPaintObject.PaintOn( ACanvas: TCanvas );
begin
DoPaintOn( ACanvas );
end;
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ea 0a 4c 14 0d b6 3a a4 c1 c5 b9
dc 90 9d f0 e9 de 13 da 60)