[SOLVED] Hide text in DBGrid lazarus / 16-Databases ---------------------------------------------------------------------- pcurtis · 2021-02-11 00:03 Hi All, I can draw an image in a DBGrid with this Code: Pascal  [Select][+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect; DataCol: Integer;  Column: TColumn; State: TGridDrawState);begin  if (Column.Index = 1) and (ZTable1['fnIDX'] = 4) then    begin      Imagelist1.Draw(DBGrid1.Canvas, Rect.Left + 2, Rect.Top + 2, 0);    end;end; I know I can do Code: Pascal  [Select][+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i procedure TForm1.ZTable1AfterOpen(DataSet: TDataSet);begin  DataSet.FieldByName('fnIDX').OnGetText := @FormatTEXT;end; procedure TForm1.FormatTEXT(Sender: TField; var aText: string; DisplayText: Boolean);begin  if DisplayText then    begin      aText := '';    end;end;  but this makes the DataSource.OnDataChange event fire too many times. How can I stop this? How can I hide the text in the cell? Thanks in advance. ---------------------------------------------------------------------- pcurtis · 2021-02-12 08:41 OK, that idea works. Thanks.