Es gibt nur eine richtige Schreibweise:
Paintbox1.Canvas wie man sieht ohne Leerzeichen um den Punkt.
Das Zeichnen des Gittes muss grundsätzlich im Event
OnPaint stattfinden und an keiner anderen Stelle im Code.
Hier ist der Code für ein paar senkrechte Linien als Vorlage:
Delphi-Quellcode:
procedure TForm1.PaintBox1Paint(Sender: TObject);
var
pcanvas : TCanvas; // Hilfsvariable
i : Integer;
begin
// Canvas der Paintbox besorgen
pcanvas := (sender as TPaintbox).Canvas;
pcanvas.pen.color := clRed;
for i := 0 to 20 do
begin
pcanvas.MoveTo(i*10,0);
pcanvas.LineTo(i*10, 200);
end;
// pcanvas wird NICHT freigeben
end;