关于DBGRID显示特定颜色的问题!
具体是这样的,我从EXCEL表导入数据到access数据库的,然后对导入的数据进行辨别,例如:我导入的数据里面有“时间”这个字段,在某一个时间以前是一个颜色,某一个时间以后是一个颜色!!应该是在DBGRID里面写呢??还是我这个导入按钮里面写???具体怎么写呢??
具体是这样的,我从EXCEL表导入数据到access数据库的,然后对导入的数据进行辨别,例如:我导入的数据里面有“时间”这个字段,在某一个时间以前是一个颜色,某一个时间以后是一个颜色!!应该是在DBGRID里面写呢??还是我这个导入按钮里面写???具体怎么写呢??
Field: TField; State: TGridDrawState);
begin
if Query1.FieldByName('时间).AsString='2009-10-14' then
DBGrid1.canvas.Font.color:=clred
else
begin
if Query1.FieldByName('时间).AsString='2009-10-13' then
DBGrid1.Canvas.Font.Color:=clGreen;
end;
DBGrid1.DefaultDrawColumnCell(Rect,DataCol,Column,State);
end;
Field: TField; State: TGridDrawState);
begin
if adoQuery1.FieldByName('ComeTime).AsString >= 09:10 then[Error] Unit1.pas(142): Missing operator or semicolon
DBGridEh1.canvas.Font.color:=clred;
[Error] Unit1.pas(142): Missing operator or semicolon
else
begin
if adoQuery1.FieldByName('GoTime).AsString <= 17:30 then
DBGridEh1.Canvas.Font.Color:=clGreen;
end;
DBGridEh1.DefaultDrawColumnCell(Rect,DataCol,Column,State);end;
procedure TForm1.DBGridEh1DrawDataCell(Sender: TObject; const Rect: TRect;
Field: TField; State: TGridDrawState);
begin
if adoQuery1.FieldByName('ComeTime').AsString >= '09:10' then
DBGridEh1.canvas.Font.color:=clred;
if adoQuery1.FieldByName('GoTime').AsString <= '17:30' then
DBGridEh1.Canvas.Font.Color:=clGreen;
end;
加上这句
[Error] Unit1.pas(146): Undeclared identifier: 'DataCol'
它自己的,不能调用DefaultDrawColumnCell
Field: TField; State: TGridDrawState);
begin
if Query1.FieldByName('时间).AsString='2009-10-14' then
DBGrid1.canvas.Font.color:=clred
else
begin
if Query1.FieldByName('时间).AsString='2009-10-13' then
DBGrid1.Canvas.Font.Color:=clGreen;
end;
DBGrid1.DefaultDrawColumnCell(Rect,DataCol,Column,State);
end;