Listview控件选中一行的颜色默认是深兰色的,能不能改变这个选中时的颜色啊

解决方案 »

  1.   

    yao求指点!
    急!!!!!!!!!!!!
      

  2.   

    一群瞎咋呼的人啊……把那10分给我好了TListView的OnCustomDraw()事件里,随便挑一句:
    Sender.Canvas.Brush.Color := RGB(240,240,240); //灰色
    Sender.Canvas.Brush.Color := clBlue;  //深兰色如果你想有隔行效果:
      if Item.Index mod 2 =0 then
        Sender.Canvas.Brush.Color := RGB(240,240,240)
      else
        Sender.Canvas.Brush.Color :=clWhite;
      

  3.   

    yeliming(贱神)你理解错误啊
    我是说当我单击TListView的一行时显示的那个颜色
    而不是你所说的画下来的颜色,我要的是单击时动态显示的那个颜色
      

  4.   

    TListView的OnCustomDraw()事件里,再判断一下,是否在选中状态.
     if gdSelected in State then //选中的时候
    Sender.Canvas.Brush.Color := clred;
    else
    Sender.Canvas.Brush.Color := clblue;  //深兰色
     gdSelected 这是DBGRID的写法.我现在没装DELPHI,不能帮你试,你按一下帮助,看看LISTVIEW怎么写来着
      

  5.   

    后面还要加上这句
    (Sender as TListView).DefaultDrawColumnCell(rect, DataCol, Column, state)