Скачиваний:
11
Добавлен:
15.06.2014
Размер:
1.54 Кб
Скачать
unit Unit2;

interface

uses graphics;
var colrback:Tcolor;
type
Tviz=class(Tobject)
colrline:Tcolor;
canvas:Tcanvas;
x,y,r:word;
procedure ris;virtual; abstract;
procedure draw(bl:boolean);
procedure show;
procedure hide;
procedure movto(dx,dy,dr:integer);
end;
Tkrug=class(tviz)
x1,y1,x2,y2:word;
constructor create(x0,y0,r0:word;
colrline0:tcolor;canvas0:tcanvas);
procedure ris;override;
end;

tkvad=class(tkrug)
procedure ris;override;
end;

tkrpr=class(tkrug)
dy1:word;
constructor create(x0,y0,r0,dy0:word;
colrline0:tcolor;canvas0:tcanvas);
procedure ris;override;
end;

implementation

procedure tviz.draw;
begin
with canvas do begin
if bl then begin
pen.color:=colrline; brush.color:=colrline
end
else begin
pen.color:=colrback; brush.color:=colrback
end;
ris;
end; end;

procedure tviz.show;
begin
draw(true);
end;

procedure tviz.hide;
begin
draw(false);
end;

procedure tviz.movto;
begin
hide;
x:=x+dx;y:=y+dy;r:=r+dr;
show;
end;

constructor tkrug.create;
begin
colrline:=colrline0;
canvas:=canvas0;
x:=x0;y:=y0;r:=r0;
end;

procedure tkrug.ris;
begin
x1:=x-r;x2:=x+r;y1:=y-r;y2:=y+r;
canvas.ellipse(x1,y1,x2,y2);
end;

procedure tkvad.ris;
begin
x1:=x-r;x2:=x+r;y1:=y-r;y2:=y+r;
canvas.rectangle(x1,y1,x2,y2);
end;

constructor tkrpr.create;
begin
dy1:=dy0;
inherited create(x0,y0,r0,colrline0,canvas0);
end;

procedure tkrpr.ris;
begin
inherited ris;
canvas.rectangle(x1,y2,x2,y2+dy1);
end;

end.
Соседние файлы в папке как в методе
  • #
    15.06.20142.57 Кб11Unit1.dfm
  • #
    15.06.20142.41 Кб10Unit1.pas
  • #
    15.06.20142.57 Кб10Unit1.~dfm
  • #
    15.06.20142.41 Кб11Unit1.~pas
  • #
    15.06.20143.47 Кб10Unit2.dcu
  • #
    15.06.20141.54 Кб11Unit2.pas
  • #
    15.06.2014678 б10Unit2.~pas