Grundlagen zur Canvas
Viele Delphi-Komponenten enthalten eine Canvas. Das ist eine rechteckige "Leinwand", auf der
gezeichnet werden kann. Ein Formular enthält z.B. eine Canvas. Zum Zeichnen enthält die Canvas
einen Pen (Stift), der zum Linien-Zeichnen und für Umrisse verwendet wird. Farbe, Strichstärke
und Strichart des Pen lassen sich einstellen. Außerdem gibt es einen Brush (Pinsel), der zum
Flächenfüllen verwendet wird. Auch hier lassen sich Farbe und Füllmuster einstellen. Zum Zeichnen
von Figuren stehen viele Spezialbefehle zur Verfügung.
Für unsere Zwecke scheint insbesondere der Befehl
Polygon interessant:
Auszug aus der Delphi-Hilfe:
Die Methode Polygon zeichnet eine Reihe von Linien auf der Zeichenfläche, welche die als
Parameter übergebenen Punkte der Reihe nach verbinden. Eine Linie vom letzten zum ersten Punkt
schließt den Umriss.
Delphi-Syntax:
procedure Polygon(Points: array of TPoint);
Beschreibung
Mit dieser Methode könne Sie unter Verwendung des aktuellen Stifts eine in sich geschlossene,
vieleckige Form zeichnen. Die fertiggestellte Form wird mit den aktuell für Brush festgelegten
Parametern gefüllt.
Der Parameter Points ist ein Array mit den Scheitelpunkten des Polygons.
|
Erläuterungen
Um den Befehl nutzen zu können, sollten noch einige Details geklärt werden:
array of ist ein uns bekanntes
dynamisches Array. Aber was bedeutet
TPoint?
TPoint ist ein Record (Verbund), der folgendermaßen definiert wurde:
type
TPoint = record
x,y : integer;
end;
|
Eine Variable P vom Typ TPoint eignet sich hervorragend, um Bildschirm-Koordinaten zu speichern.
An den x-Teil kommt man dann mit P.x heran. Aber die Punkt-Schreibweise ist ja schon von
Objekten her bekannt. Record-Variablen sind nicht dynamisch, sie müssen also nicht erzeugt und
vernichtet werden.
Aufgabe
Erarbeite dir anhand des kleinen Demo-Programms
Canvas einige
Grundlagen zur Canvas-Programmierung.