如何知道当前行!(50分)

  • 主题发起人 主题发起人 SmallGhost
  • 开始时间 开始时间
S

SmallGhost

Unregistered / Unconfirmed
GUEST, unregistred user!
我想给TDBGrid加间隔色,做法就是奇数行用白色,偶数用灰色。现在的问题就是无法
知道当前的行号,哪位大侠知道吗?
 
自己要学会搜索:P
DBGrid中的行以颜色间隔的方式显示
自己是个Delphi迷,但许多技巧都是从网上拿来之,却没给大家奉献点啥子,甚是惭愧!只
有一点小东东略表心意:
  笔者想把DBGrid中的行以颜色间隔的方式显示出来,方法是:
procedure DrawGrid(Grid:TDBGrid;const Rect: TRect;
DataCol: Integer;
Column: TColumn;
State: TGridDrawState);
begin
if odd(Grid.DataSource.DataSet.RecNo) then
//奇偶行判断
begin
Grid.Canvas.Font.Color:=clblack;
Grid.Canvas.Brush.color:=clwhite;
end
else
begin
Grid.Canvas.Font.Color:=clblack;
Grid.Canvas.Brush.color:=clcream;
end;
if Grid.SelectedRows.CurrentRowSelected then
//dgRowSelect和dgMultiSelect都为真时有效
begin
Grid.Canvas.Font.Size:=12;
Grid.Canvas.Font.Style:=[fsBold];
Grid.Canvas.Font.Color:=clwhite;
Grid.Canvas.Brush.color:=clNavy;
end;

Grid.DefaultDrawColumnCell(rect,datacol,column,state);
end;
  在OnDrawColumnCell事件中放入DrawGrid((sender as TDBGrid),Rect,DataCol,Column,State)就大功告成了。谢谢无偿使用!
 
问题解决了,太感谢了
 
后退
顶部