Hay una forma de obtener el subitem sobre el que se da clic:
Código Delphi
[-]
uses CommCtrl;
procedure TForm1.ListViewMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
var
Item: TListItem;
Info: TLVHitTestInfo;
Index: Integer;
begin
Info.pt := Point(X, Y);
Index := ListView_SubItemHitTest(ListView.Handle, @Info);
if Index <> -1 then
begin
Item := ListView.Items[Index];
if Info.iSubItem = 0
then ShowMessage(Item.Caption)
else ShowMessage(Item.SubItems[Info.iSubItem - 1]);
end
else
ShowMessage('nowhere');
end;
// Saludos