Informatik Material Portal Portfolio Präsentation Grafik Tabellenkalkulation Informatik56 9 10 11 12 13 Messen, Steuern, Regeln Linux Theorie Didaktik Open Source Spiele Wettbewerbe Netzbetreuung intern Literatur Links Energie corewar UNIX/Linux
Pfad: Startseite / Fächer / Informatik
Autor: be
21.09.2005 10:52
454

Rechteck - Lösung

Der manuell geschriebene Quelltext ist blau hervorgehoben.

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls;

type
  TForm1 = class(TForm)
    Image1: TImage;
    procedure Image1MouseUp(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
  private
    { Private-Deklarationen }
    procedure rechteck(a,b:Integer);
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}
procedure TForm1.rechteck(a,b:Integer);
var x,y: Integer;
begin
  with Image1.Canvas do
  begin
    x := PenPos.X;
    y := PenPos.Y;
    Rectangle(x - a div 2, y - b div 2, x + a div 2, y + b div 2);
  end;
end;

procedure TForm1.Image1MouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
// zum Testen der Prozedur rechteck (nicht ausdrücklich verlangt)
begin
  Image1.Canvas.MoveTo(X,Y);    // setzt den Stift auf die angeklickte Stelle
  rechteck(40,20)
end;

end.