使用自画事件:procedure TForm1.DBGrid2DrawColumnCell(Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState); begin inherited; If (DataCol<>0) and (Not Column.Field.IsNull) then begin If Column.Field.AsString = '0' then //或其它判断条件 DBGrid2.Canvas.FillRect(Rect); end; end;
在sql语句中写 用 REPLACE函数将0替换成''
(dbgrid1.DataSource.DataSet.fieldbyname('字段名') as Tfloatfield). displayformat:='#.#';
const Rect: TRect; DataCol: Integer; Column: TColumn;
State: TGridDrawState);
begin
inherited;
If (DataCol<>0) and (Not Column.Field.IsNull) then
begin
If Column.Field.AsString = '0' then //或其它判断条件
DBGrid2.Canvas.FillRect(Rect);
end;
end;