Q:  How do I right justify a column of numeric data in a TStringGrid?

A:  You must respond to the OnDrawCell event and draw the particulaur column of cells yourself. YOu can leave DefaultDrawing set to True and just *overwrite* the default drawing of your particular column - this is easier than totally taking over drawing. To right-align a cell's text:

VAR vCol, vRow : LongInt;
begin
  vCol := Col;
  vRow := Row;
  WITH Sender AS TStringGrid, Canvas DO
    IF vCol = 2 THEN BEGIN
      SetTextAlign(Handle, TA_RIGHT);
      FillRect(Rect);
      TextRect(Rect, Rect.RIGHT - 2, Rect.Top + 2,
      Cells[vCol, vRow]);
    END;
end;