Einzelnen Beitrag anzeigen

Benutzerbild von MarquiseDeSade
MarquiseDeSade

Registriert seit: 18. Apr 2007
Ort: Mainz
55 Beiträge
 
Turbo Delphi für Win32
 
#1

Verständnisproblem beim Zeichnen einer Linie mit Canvas

  Alt 25. Jun 2007, 22:10
Hallo DP´ler

Wir wagen uns in der Schule ans zeichnen mit Delphi und ich habe mir ein paar Beispielcodes im Internet angeschaut, die Linien zeichnen.Hier folgendes Beispiel:
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
  Image1.canvas.pen.mode:=pmNotXor;//Was wird damit erreicht ??
  Image1.canvas.pen.style:=pssolid;//Kapier ich .O)
end;

procedure TForm1.Image1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);//Was macht hier TShiftState ??
begin
x_anfang:=x;//Ich dachte erst, dass hier nur die Belegung des Startwertes erfolgt, aber warum wird
 y_anfang:=y;//x_ende mit den selben Werten belegt ??
  x_ende:=x;
   y_ende:=y;
    zeichnen:=true;

end;

procedure TForm1.Image1MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
  if zeichnen then
     with Image1.Canvas do
       begin
        moveto(x_anfang,y_anfang);//Gehe zu Position x und x_anfang ist soweit klar
          lineto(x_ende,y_ende);//Aber ab kapier ich es nicht mehr
            x_ende:=x;
              y_ende:=y;
                moveto(x_anfang,y_anfang);
                  lineto(x_ende,y_ende);
       end;

end;

procedure TForm1.Image1MouseUp(Sender: TObject; Button: TMouseButton;//Kapier ich .O)
  Shift: TShiftState; X, Y: Integer);
begin
  zeichnen:=false;

end;
Vielen Dank für eure Anregungen und Erklärungen
  Mit Zitat antworten Zitat