listview item更改默认字体颜色,字体加粗,隔行换背景色

 更新时间:2013年9月13日 23:29  点击:790

实现效果:隔行换背景色,字体根据特定条件加粗,变绿色

procedure TMainFrm.GlobalDataCustomDrawSubItem(Sender: TCustomListView;
  Item: TListItem; SubItem: Integer; State: TCustomDrawState;
  var DefaultDraw: Boolean);
  var
i: integer;
begin
  i:= (Sender as TListView).Items.IndexOf(Item);
  if odd(i) then sender.Canvas.Brush.Color:= $02FFFFFF
  else sender.Canvas.Brush.Color:= $02EFEFEF;
  Sender.Canvas.FillRect(Item.DisplayRect(drIcon));

  if Item.SubItems.Strings[2]='√' then
  begin
  GlobalData.Canvas.Font.Color:=clGreen;
  GlobalData.Canvas.Font.Style:=[fsBold];
  end;
  DefaultDraw:=true;
end;


[!--infotagslink--]

相关文章