Witam
Mam taki problem rysuje w StringGrid skalę w następujący sposób:
procedure TMain.StringGrid4DrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState);
begin
StringGrid4.Canvas.Pen.Color:=clRed;
StringGrid4.Canvas.Pen.Width:=1;
if ((ARow=1) and (ACol mod 10 = 0)) then
begin
StringGrid4.Canvas.MoveTo(Rect.Right,Rect.Top);
StringGrid4.Canvas.LineTo(Rect.Right,Rect.Bottom);
end;
if ((ARow=1) and (not (ACol mod 10 = 0))) then
begin
StringGrid4.Canvas.MoveTo(Rect.Right,Rect.Top);
StringGrid4.Canvas.LineTo(Rect.Right,(2 * Rect.Top -(Rect.Top div 2)));
end;
end;
Jednak jeśli ustawię parametr GridLineWidth na wartosc 0 to nic mi się nie rysuje.
Natomiast jeśli na stringgrid z ustawionym GridLineWidth na 0 przy pomocy przycisku do którego przypisane są polecenia:
StringGrid4.Canvas.MoveTo(Rect.Right,Rect.Top);
StringGrid4.Canvas.LineTo(Rect.Right,(2 * Rect.Top -(Rect.Top div 2)));
linia rysuje się bez problemu.
Proszę o rade co zrobić żeby przy zdarzeniu OnDrawCell i parametrze GridLineWidth = 0 wszystko rysowało się poprawnie. Albo o zasugerowanie jakiego innego rozwiązania.