参考一下。。就在这个事件中: procedure TForm16.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState); begin if datacol=2 then begin if a1=true then dbgrid1.Canvas.Brush.Color:=clblue; end; if datacol=3 then begin if a2=true then dbgrid1.Canvas.Brush.Color:=clblue; end; dbgrid1.DefaultDrawColumnCell(Rect,DataCol,Column,State); if datacol=4 then begin if a3=true then dbgrid1.Canvas.Brush.Color:=clblue; // dbgrid1.DefaultDrawColumnCell(Rect,DataCol,Column,State); end; if datacol=5 then begin if a4=true then dbgrid1.Canvas.Brush.Color:=clblue; end;
procedure Tinfo.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState); begin if query1.FieldByName(’all’).asstring>40’ then begin dbgrid1.Canvas.Font.Color:=clred; dbgrid1.Canvas.Brush.color:=clyellow; end else begin dbgrid1.Canvas.Font.Color:=clblue; dbgrid1.Canvas.Brush.color:=clyellow; end;
procedure TForm16.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin if datacol=2 then
begin
if a1=true then dbgrid1.Canvas.Brush.Color:=clblue;
end; if datacol=3 then
begin
if a2=true then dbgrid1.Canvas.Brush.Color:=clblue;
end;
dbgrid1.DefaultDrawColumnCell(Rect,DataCol,Column,State);
if datacol=4 then
begin
if a3=true then
dbgrid1.Canvas.Brush.Color:=clblue;
// dbgrid1.DefaultDrawColumnCell(Rect,DataCol,Column,State);
end; if datacol=5 then
begin
if a4=true then
dbgrid1.Canvas.Brush.Color:=clblue; end;
dbgrid1.DefaultDrawColumnCell(Rect,DataCol,Column,State);end;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
if query1.FieldByName(’all’).asstring>40’ then
begin
dbgrid1.Canvas.Font.Color:=clred;
dbgrid1.Canvas.Brush.color:=clyellow;
end
else
begin
dbgrid1.Canvas.Font.Color:=clblue;
dbgrid1.Canvas.Brush.color:=clyellow;
end;
dbgrid1.DefaultDrawColumnCell(rect,datacol,column,state);
end;