如题.

解决方案 »

  1.   


    procedure TForm1.ListView1CustomDrawItem(Sender: TCustomListView;
      Item: TListItem; State: TCustomDrawState; var DefaultDraw: Boolean);
    begin
      if sender as tcustomlistview do
      begin
        canvas.Brush.Color:=clred;
        canvas.FillRect(rect);
        canvas.TextOut(rect.Left+10,rect.Top,item.Caption);
        canvas.Textout(rect.Left+100,rect.Top,item.SubItems[0]);
      end;
    end;
      

  2.   

    能不能更详细一些.我就是不能取到标题所处的位置的canvas.
      

  3.   


     procedure TForm1.ListView1AdvancedCustomDrawSubItem(
      Sender: TCustomListView; Item: TListItem; SubItem: Integer;
      State: TCustomDrawState; Stage: TCustomDrawStage;
      var DefaultDraw: Boolean);
    begin
       if sender as tcustomlistview do
      begin
        canvas.Brush.Color:=clred;
        canvas.Font.Color:=clblue;
      end;
    end;
    在这里onCustomDrawSubItem重绘
      

  4.   

    似乎要子类化。
    那个标题栏是一个窗口,类名为SysHeader32。
    子类化它,然后在消息里自绘它。