procedure TForm1.DBGridEh1GetCellParams(Sender: TObject; Column: TColumnEh; AFont: TFont; var Background: TColor; State: TGridDrawState);
begin
//在 name 字段值为 aaa 的行设置行背景色(ado 设置情况下)
if ADOQuery1.FieldByName('name').AsString = 'aaa' then
Background := $00FFC4C4
//也可以这样写
//在 xm 字段值为 Li ming 的行设置行背景色(bde 设置情况下)
if DBGridEh1.DataSource.DataSet.FieldByName('xm').AsString = 'Li ming' then
Background := $00FFC4C4
else
Background := $00FFDDDD;
end;
//上面的代码你自己改改、试试吧
//至于有多少种产品那就得你自己去分组一下,然后带进来做IF判断。别忘记得自定义出足够的颜色哦,这才是真正头痛的问题。