Hallo,
die Werte in den Subitems sind als String gespeichert. Wenn du Zahlen vergleichen willst, musst Du die Strings vorher umwandeln.
Falls es Integer-Werte sind, müsste folgendes funktionieren:
Delphi-Quellcode:
if StrToInt(Item.SubItems[2])<StrToInt(Item.SubItems[3]) then
Sender.Canvas.Brush.Color := clYellow
else if DateToStr(Date) = Item.SubItems[4] then
Sender.Canvas.Brush.Color := clRed
else
Sender.Canvas.Brush.Color := clWindow;