Canvas draw vertical line on form/de

From Lazarus wiki

Deutsch (de)
Zurück zur Seite Code Beispiele.

Das Unterprogramm zeigt, wie mit Canvas auf einem Formular eine vertikale Linie gezeichnet wird.

uses
  Forms, Graphics, ...;

  ...

procedure subVertikaleLinie(Form: TForm; w32X, w32Y : LongWord; bytStrich: Byte; w16Farbe: Word);
// Alle Zahlen und Berechnungen sind in Pixel
begin
  
  with Form do
  begin
    // Legt den Punkt fest, ab dem das Zeichnen beginnt
    Canvas.MoveTo(w32X, w32Y);
    // Legt die Farbe des Strichs fest
    Canvas.Pen.Color := w16Farbe;
    // Legt die Breite des Strichs fest
    Canvas.Pen.Width := bytStrich;
    // Zeichnet einen Strich
    // Parameter:
    // LineTo(Länge ab dem Startpunkt, Abstand zur Oberen Formularkante)
    Canvas.LineTo(Width - w32X, w32Y);
  end;
  
end;

...


Wenn dieses Unterprogramm im Ereignis OnPaint des Formulars eingetragen wird, wird die Linie bei jeder Formularänderung neu gezeichnet.
Beispiel:

uses
  Forms, Graphics, ...;

  ...

procedure TForm1.FormPaint(Sender: TObject);
begin
  // Parameter für das Unterprogramm:
  // Formularname, X-Startkoordinate, Y-Startkoordinate, Strichbreite, Farbe
  subVertikaleLinie(Form1, 10, 50, 2, clred);
end;

...



--Olaf 11:55, 12 June 2013 (UTC)