Ja, ich wollte mit den Code-Zeilen knausern... Aber sehr kompakt wäre auch das Folgende:siro hat geschrieben: Mi 24. Aug 2022, 04:11 InflateRect(R, GridSizeX, GridSizeY);
vergrössert nach "beiden" Seiten, wir benötigen nur eine Seite (rechts und unten)
tut aber keinem weh, ergibt lediglich einen unsichtbaren GridPoint mehr.
habe es erfolgreich ausprobiert mit:
inc(r.Right ,GridSizeX);
inc(r.Bottom,GridSizeY);
Code: Alles auswählen
// paint points
if ShowGrid then
begin
ADDC.Canvas.Pen.Color := GridColor;
ADDC.Canvas.Pen.Width := 1;
ADDC.Canvas.Pen.Style := psSolid;
P := TWinControlAccess(AWinControl).GetClientScrollOffset;
R := TWinControlAccess(AWinControl).ClientRect;
R.BottomRight := R.BottomRight + Point(GridSizeX, GridSizeY);
OffsetRect(R, P.X div GridSizeX * GridSizeX, P.Y div GridSizeY * GridSizeY);
DrawGrid(ADDC.Canvas.Handle, R, GridSizeX, GridSizeY);
end;
Ich schreibe mal einen Bug-Report, um das alles zu dokumentieren, und lade dann die Änderung ins Repository, falls nicht doch noch Überraschungen kommen.