Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Listview Items verschieben (https://www.delphipraxis.net/78051-listview-items-verschieben.html)

mimi 28. Sep 2006 11:34


Listview Items verschieben
 
Hallo,
ich suche jetzt schon nach länger zeit einer lösung zum verschieben von items in einer ListView... ich habe mir folgenden code ausgedacht aber es geht leider nicht: ich habe alles doppelt also:
ich makiere ein item und verschiebe es und habe auf einmal zwei davon..
hier der code:
Delphi-Quellcode:
procedure TForm1.ListView1DragDrop(Sender, Source: TObject; X, Y: Integer);
var
  alt,neu,neu1:TListItem;
  oldIndex:Integer;
begin
  if ListView1.Selected <> NIl then begin
    neu:=ListView1.GetItemAt(x,y); alt:=ListView1.ItemFocused;
    neu1:=ListView1.Items[neu.index];

    ListView1.Items[neu.index]:=alt;
    ListView1.Items[alt.Index]:=neu1;

    //    listview1.Selected:=neu;
     end;

end;
wobei ich kann mir nicht erkälren warum neu1 den gleichen wert hat wie alt

mimi 28. Sep 2006 11:48

Re: Listview Items verschieben
 
Habs geschaft mit diesem code können zwei elemente vertauscht werden es lag an Assign den hatte ich nicht hinzugefügt !
Delphi-Quellcode:
procedure TForm1.ListView1DragDrop(Sender, Source: TObject; X, Y: Integer);
var
  alt,neu,neu1:TListItem;
begin
  if ListView1.Selected <> NIl then begin
    neu1:=TListItem.Create(listview1.Items);
    neu:=ListView1.GetItemAt(x,y); alt:=ListView1.ItemFocused;

    neu1.Assign(neu);
    ListView1.Items[neu.index]:=ListView1.Items[alt.index];
    ListView1.Items[alt.Index]:=neu1
    //    listview1.Selected:=neu;
     end;

end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:16 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz