LISTVIEW控件的ViewStyle属性为vsReport,RowSelect属性为True。
我想做出这样的效果:
列表中每一行的字体颜色都不相同,根据数据而决定该行的字体颜色。
不知道该如何做,实在不行能做出每行的背景色不一样也行啊
请高手帮帮忙!!!

解决方案 »

  1.   

    procedure TForm1.ListView1CustomDrawItem(Sender: TCustomListView;
      Item: TListItem; State: TCustomDrawState; var DefaultDraw: Boolean);
    begin
        if  odd(item.Index)   then
            item.ListView.Canvas.Brush.Color:=$00FEF4E7
            else
            item.ListView.Canvas.Brush.Color:=$00F7F8F9;
    end; 
      

  2.   

    Copy cg1120(代码最优化-§为这世界,添些美丽色彩§) 后修改
        if  odd(item.Index)   then
            item.ListView.Canvas.Font.Color := clGreen
            else
            item.ListView.Canvas.Font.Color:= clRed;
      

  3.   

    不用书(写书的人抄谁的?),这些东东做多了自然就知道了,多看看VCL代码,对其架构有些了解!