Das Problem ist das
round()
– änder mal den Variablentyp in
single
oder
double
und verschiebe das
round()
in die Berechnung in der Schleife:
Delphi-Quellcode:
KaestchenBreite := (Zeichenflaeche.Width - RandLinks - RandRechts)/AnzahlSpalten;
KaestchenHoehe := (Zeichenflaeche.Height - RandOben - RandUnten)/AnzahlZeilen;
for Zeilenzaehler := 0 to AnzahlZeilen do
begin
Form1.Canvas.MoveTo(RandLinks, round(RandOben + Zeilenzaehler*Kaestchenhoehe));
Form1.Canvas.LineTo(Zeichenflaeche.Width-RandRechts, round(RandOben + Zeilenzaehler*Kaestchenhoehe));
end;
{ ... }