假如我有个表,在DBGrid中显示,它的datasource是一个TTable(不是TQuery)
---------------------------------------------
1 dafadsfads
2 asdfadsafsdfe
3 aaaaaaaaaaaaaaaaee
4 adeoooo
-----------------------------------------------
当我输入'ds'就搜索所有包含'ds'的元组,如何让这个满足条件的DBGrid的行变底色?
---------------------------------------------
1 dafadsfads
2 asdfadsafsdfe
3 aaaaaaaaaaaaaaaaee
4 adeoooo
-----------------------------------------------
当我输入'ds'就搜索所有包含'ds'的元组,如何让这个满足条件的DBGrid的行变底色?
procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
var
i:integer;
mycolor:TColor;
begin
for i:=1 to aCount do
begin
if ADOQuery1.FieldByName('CarNo').AsString='晋AAP167' then
begin
DBGrid1.Canvas.Font.Color:=clblack;
DBGrid1.Canvas.Brush.Color := clgreen;
DBGrid1.DefaultDrawColumnCell(Rect, DataCol, Column, State);
end;
if GdSelected in State then
begin
exit;
end;
end;
end;
const Rect: TRect; DataCol: Integer; Column: TColumn;
State: TGridDrawState);
begin
if ADOQuery3.FieldByName('qty').Asstring ='0' then
begin
DBGrid1.Canvas.Font.Color := clRed;
DBGrid1.Canvas.Brush.Color:=clyellow;
DBGrid1.DefaultDrawColumnCell(Rect, DataCol, Column, State);
end;
end;