anchor.diff:    if showV then
     begin
       FVScrollBar.Visible := true;
  -    FVScrollBar.Min         := 0;
  +    FVScrollBar.Min := 0;
       if RowCount > 0 then
         FVScrollBar.SliderSize := VisibleLines / RowCount
       else
         FVScrollBar.SliderSize := 0;
  -    FVScrollBar.Max         := RowCount-VisibleLines;
  -    FVScrollBar.Position    := FFirstRow;
  +    FVScrollBar.Max := RowCount-VisibleLines;
  +    FVScrollBar.Position := FFirstRow;
       FVScrollBar.RepaintSlider;
  -    FVScrollBar.Top     := 2;
  -    FVScrollBar.Left    := Width - FVScrollBar.Width - 2;
  -    FVScrollBar.Height  := VHeight;
  +    FVScrollBar.Top := borders.Top;
  +    FVScrollBar.Left := Width - FVScrollBar.Width - borders.Right;
  +    FVScrollBar.Height := VHeight;
     end
     else
     begin
  
positive.code:   sw: integer;
  begin
    if FVScrollBar.Visible then
      sw := FVScrollBar.Width-1
    else
      sw := 0;
    Result := Width - (FMargin*2) - sw;
  end;
  
  function TfpgBaseGrid.VisibleHeight: integer;
  
negative.code:     ebsDefault:
          begin
            fpgStyle.DrawControlFrame(Canvas, r);
          end;
      ebsSingle:
          begin
            Canvas.SetColor(clShadow2);
            Canvas.DrawRectangle(r);
          end;
    end;
    r := GetClientRect;
    clipr := r;
    Canvas.SetClipRect(clipr);
  
    Canvas.SetColor(FBackgroundColor);
    Canvas.FillRectangle(r);
  
    cLeft := r.Left; // column starting point
    rTop := r.Top; // row starting point
  
    if go_SmoothScroll in FOptions then
    begin
  