Как раскрасить отдельные строки в TDBGgrid
Как раскрасить отдельные строки в TDBGgrid
Как раскрасить отдельные строки в TDBGgrid dbgrid1.defaultdrawing := false; procedure tform1.dbgrid1drawcolumncell(sender: tobject; const rect: trect; datacol: integer; column: tcolumn; state: tgriddrawstate); var grid: tdbgrid; begin grid := sender as tdbgrid; if (grid.datasource.dataset.recno mod 2) = 0 then grid.canvas.brush.color := clred; grid.defaultdrawcolumncell(rect, datacol, column, state); end; ************************************************************************ Если Вы хотите раскрасить выбранную строку dbgrid, но не хотите использовать опцию dgrowselect, так как хотели бы редактировать данные, то можно воспользоваться следующей технологией в событии dbgrid.ondrawcolumncell: type tcustomdbgridcracker = class(tcustomdbgrid); procedure tform1.dbgrid1drawcolumncell(sender: tobject; const rect: trect; datacol: integer; column: tcolumn; state: tgriddrawstate); begin with tcustomdbgridcracker(sender) do if datalink.activerecord = row - 1 then canvas.brush.color := clred else canvas.brush.color := clwhite; defaultdrawcolumncell(rect, datacol, column, state); end;