Estrarre la Caption di un TListView col doppio click del mouse

di il
2 risposte

Estrarre la Caption di un TListView col doppio click del mouse

procedure TForm1.ListView1DblClick(Sender: TObject);
var NomeFile: String; n: Integer;
  P: TPoint;
  Item: TListItem;
begin
  // Ottieni le coordinate del mouse relative alla ListView
  P := ListView1.ScreenToClient(Mouse.CursorPos);
  // Trova l'item alle coordinate specificate
  Item := ListView1.GetItemAt(P.X, P.Y);
  if Assigned(Item) then
      NomeFile:=Item.Caption;
...		      

Il listato sopra dovrebbe restituirmi la Caption dell'Item (riga) cliccato. Non capico il motivo per cui invece mi restiruisce la caption del Item che era precedentemente selezionato prima del doppio click.

Con questa riga ottengo il medesimo risultato:

NomeFile:=ListView1.Selected.Caption;

2 Risposte

  • Re: Estrarre la Caption di un TListView col doppio click del mouse

    Ritiro il post. Funzionano entrambi i metodi esposti, l'errore era in quello che combinavo nel codice seguente a quello esposto.

    
    Form2.ShowModal; 
    Form2.Edit1.Text:=NomeFile;
    Form2.Edit1.AutoSelect:=True;

    Mettendo il ShowModal alla fine delle altre 2 ho corretto il codice.

  • Re: Estrarre la Caption di un TListView col doppio click del mouse

    15/03/2026 - franco ha scritto:

    Con questa riga ottengo il medesimo risultato:

    NomeFile:=ListView1.Selected.Caption;

    E perché hai deciso.di farti male intercettando il punto in cui si trova il puntatore e tutto quell'ambaradan?

    Solo per curiosità. Se.io posso avviare la macchina girando la chiave perché dovrei spingerla.ed inserire la seconda marcia per accenderla?

    Potresti usare anche sender se non sai a quale controllo sta puntando il mouse.

Devi accedere o registrarti per scrivere nel forum
2 risposte