Canvas draw vertical line on form/de

From Lazarus wiki
Revision as of 23:40, 10 February 2020 by Trev (talk | contribs) (Fixed syntax highlighting; deleted category already in page template)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search

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;

...