Так вот по ячейке и надо закрашивать всю строку в зависимости от состояния одного или нескольких столбцов таблицы. Вот к примеру, у меня закрашивается вся строка, используется cxGrid:
Код:
procedure TComparatorsFrame.grComporatorsViewCustomDrawCell(
Sender: TcxCustomGridTableView; ACanvas: TcxCanvas;
AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
begin
if not AViewInfo.Selected then
case AViewInfo.GridRecord.Values[7] of
0: ACanvas.FillRect(AViewInfo.Bounds, DM.ComparatorState1);
1: ACanvas.FillRect(AViewInfo.Bounds, DM.ComparatorState2);
else
ACanvas.FillRect(AViewInfo.Bounds, DM.ComparatorState3);
end;
end;