希望有隔行变色,然后红色字,但现在只能选其一
另外字体如何加粗?
DBGrid2DrawColumnCell 里面procedure TForm2.DBGrid2DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
if dbgrid2.DataSource.DataSet.RecNo mod 2=0 then
dbgrid2.canvas.Brush.color:=$FFFFF0
else
dbgrid2.Canvas.Font.Color := clRed; //------加了这行,下行没反应该
dbgrid2.canvas.Brush.color:=$FFFFFF;
dbgrid2.DefaultDrawColumnCell(rect,datacol,column,state);
end;
另外字体如何加粗?
DBGrid2DrawColumnCell 里面procedure TForm2.DBGrid2DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
if dbgrid2.DataSource.DataSet.RecNo mod 2=0 then
dbgrid2.canvas.Brush.color:=$FFFFF0
else
dbgrid2.Canvas.Font.Color := clRed; //------加了这行,下行没反应该
dbgrid2.canvas.Brush.color:=$FFFFFF;
dbgrid2.DefaultDrawColumnCell(rect,datacol,column,state);
end;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
if dbgrid2.DataSource.DataSet.RecNo mod 2=0 then
dbgrid2.canvas.Brush.color:=$FFFFF0
else
dbgrid2.canvas.Brush.color:=$FFFFFF;
dbgrid2.Canvas.Font.Color := clRed; //------加了这行,下行没反应该
dbgrid2.DefaultDrawColumnCell(rect,datacol,column,state);
end;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
if dbgrid2.DataSource.DataSet.RecNo mod 2=0 then
begin
dbgrid2.canvas.Brush.color:=$FFFFF0;
dbgrid2.Canvas.Font.Color := clBlack;
end else
begin
dbgrid2.canvas.Brush.color:=$FFFFFF;
dbgrid2.Canvas.Font.Color := clRed;
dbgrid2.Canvas.Font.Style:= dbgrid2.Canvas.Font.Style + [fsbold]; //加粗,这是xe10上的写法
end;dbgrid2.DefaultDrawColumnCell(rect,datacol,column,state);
end;