procedure TForm1.ListView1CustomDrawSubItem(Sender: TCustomListView;
Item: TListItem; SubItem: Integer; State: TCustomDrawState;
var DefaultDraw: Boolean);
var
R: TRect;
begin
R := Item.DisplayRectSubItem(1, drBounds); // 1 = index of image column
ImageList1.Draw(Sender.Canvas, R.Left, R.Top, Index);
end;