unit Zeichenprogramm2;
// Zeichenprogramm Kreis, Rechteck
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls;
type
TGrafikobjekt=class
x,y: integer;
fuellFarbe:TColor;
randFarbe:TColor;
procedure anzeigen;
virtual;
end;
TKreis =
class(TGrafikobjekt)
radius:integer;
procedure anzeigen;
override;
end;
TRechteck=class(TGrafikobjekt)
r,s:integer;
procedure anzeigen;
override;
end;
TForm1 =
class(TForm)
Button1: TButton;
Button2: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private-Deklarationen }
public
{ Public-Deklarationen }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TKreis.anzeigen;
begin
Form1.canvas.ellipse(x,y,x+radius*2,y+radius*2);
end;
procedure TRechteck.anzeigen;
begin
Form1.canvas.rectangle(x,y,x+100,y+100);
end;
procedure TGrafikObjekt.anzeigen;
begin
Form1.canvas.pen.color:=randFarbe;
Form1.canvas.brush.color:=fuellFarbe;
end;
procedure TForm1.Button1Click(Sender: TObject);
var Kreis:TKreis;
var Kreis2:TKreis;
begin
Kreis:=TKreis.create;
Kreis.x:=50;
Kreis.y:=60;
Kreis.radius:=100;
Kreis.randFarbe:=clGreen;
Kreis.fuellFarbe:=clYellow;
Kreis.anzeigen;
Kreis.destroy;
Kreis2:=TKreis.create;
Kreis2.x:=20;
Kreis2.y:=70;
Kreis2.radius:=200;
Kreis2.randFarbe:=clRed;
Kreis2.fuellFarbe:=clBlue;
Kreis2.anzeigen;
Kreis2.destroy;
end;
procedure TForm1.Button2Click(Sender: TObject);
var Rechteck:TRechteck;
begin
Rechteck:=TRechteck.create;
Rechteck.x:=100;
Rechteck.y:=50;
Rechteck.randfarbe:=clGreen;
Rechteck.fuellfarbe:=clYellow;
Rechteck.anzeigen;
Rechteck.destroy;
end;
end.