在Listview的OnClick事件里添加代码
begin
  if ListView1.Selected = nil then Exit;
  Case ListView1.Selected.Index of
    0:
    begin
      //
    end;
    1:
    begin
    end;
    ...
  end;
end;
将RowSelect设为True,MultiSelect设为False;

解决方案 »

  1.   

    procedure TForm1.ListView1Click(Sender: TObject);
    var
      ItemFormCls : TFormClass;
      lvMe : TListView;
    begin
      lvMe := Sender as TListView;
      if lvMe.Selected <> nil then
      begin
        ItemFormCls :=TFormClass(lvMe.Selected.Data);
        if ItemFormCls <> nil then
          ItemFormCls.Create(self).Visible := true;
      end;
    end;procedure TForm1.FormCreate(Sender: TObject);
    var
      NewItem: TListItem;
    begin
      NewItem := ListView1.Items.Add;
      NewItem.Caption := 'Form2';
      NewItem.Data := Pointer(TForm2);
      NewItem := ListView1.Items.Add;
      NewItem.Caption := 'Form3';
      NewItem.Data := Pointer(TForm3);
      NewItem := ListView1.Items.Add;
      NewItem.Caption := 'Form4';
      NewItem.Data := Pointer(TForm4);
    end;