如何在listview下让满足条件的数据显示成红色!

解决方案 »

  1.   

    在OnCustomDrawItem事件中:
    procedure TForm1.ListView1CustomDrawItem(Sender: TCustomListView;
      Item: TListItem; State: TCustomDrawState; var DefaultDraw: Boolean);
    var
      r: TRect;
      c: TCanvas;
    begin
      if Item.Index = 1 then begin
        c := TCanvas.Create;
        c.Handle := GetDC(Item.Handle);
        r := Item.DisplayRect(drLabel);
        c.Font.Color := clRed;
        c.TextOut(r.Left, r.Top, Item.Caption);
        DefaultDraw := False;
        c.Free;
      end;
    end;
      

  2.   

    例如,Strtodate('2003-02-15')-StrTodate('2003-02-13') =2的值全部
    为红色,不满足的不变色。