How to write a borders.

I want to write a border in the framework of the cell.
(Without AdvStringGrid1GetCellBorder )
Do you have the other of the following methods (by Demo asg43) ?

For example, in this way....
  AdvStringGrid1.Borders[i,j,x,y]:=[cbLeft];

//--------------------------------
//by Demo asg43
//--------------------------------
procedure TForm1.AdvStringGrid1GetCellBorder(Sender: TObject; ARow,
  ACol: Integer; APen: TPen; var Borders: TCellBorders);
begin
  if not Odd(ACol) and (ARow > 0) and (ACol > 0) then
  begin
    Borders := [cbLeft];
    APen.Width := 1;
    APen.Color := clBlack;
  end;

  if not Odd(ARow) and (ARow > 0) and (ACol > 0) then
  begin
    Borders := Borders + [cbBottom];
    APen.Width := 1;
    APen.Color := clBlack;
  end;

end;

I want to know how to draw the borders , such as in this picture .
https://i.gyazo.com/6a8d31686ebd4ba2d39781e332cb012e.png


best regards
# Windows7(64) / Delphi10 

Borders are always customized via the event OnGetCellBorder / OnGetCellBorderProp.There are currently no border related cell based properties.

Hi Bruno, 
thank's for your reply. 
I try the  TMS Flexcel demo .
I see.Thank you.It is a great feature.
by the way,This is drawn from the upper left.
I want to draw in the lower left corner.
How to get the width and height ?

I'm sorry. I was the wrong place to post.
This post is closed in me.