Wednesday, January 31, 2007

Barevné řádky v ListView

Velmi podobný příklad jako předchozí je i ten následující. Ukážeme si, jak měnit barevné pozadí jednotlivých řádků u komponenty ListView. Nejprve ji tedy umístíme na formulář, položku ViewStyle v Object Inspectoru nastavíme na vsReport a poté již jen přidáme kód do události OnCustomDrawItem takto:

procedure TForm1.ListView1CustomDrawItem(Sender: TCustomListView; Item: TListItem; State: TCustomDrawState; var DefaultDraw: Boolean);
begin
with ListView1.Canvas.Brush do
begin
case Item.Index of
0: Color := clYellow;
1: Color := clGreen;
2: Color := clRed;
end;
end;
end;

Jak vidíte, kód je velmi jednoduchý. Zde jsou pro ukázku změněny barvy u prvních tří položek.