Kopiowanie itemów pomiędzy ListView

0

Mam liste ListView oraz taką samą liste ale stworzoną dynamicznie (ale ukrytą - hide). Chce skopiować wszystkie itemy z normalnej listy do dynamicznej:

List_Temp := TListView.Create(nil);
List_Temp.Items := List_Rej.Items;

Podczas tej operacji wywala błąd "Control " has no parent window". Czy komponentu ListView nie można tworzyć dynamicznie?. List_Temp zwalniam w OnClose formy.

0

trzeba się jeszcze trochę pouczyć

List_Temp.Items.Assign(List_Rej.Items);

a było już kilka razy

0

Człowiek uczy sie przez całe życie :) . W każdym razie dzięki :] . Może jeszcze jedno pytanko, a jak skopiować tylko jakiegoś itema?

0

pojedyńczy item np. tak

lv1.AddItem(lv1.Items[0].Caption, lv1.Items[0].Data);

można też

var
  li: TListItem;
begin
  li := lv1.Items.Add;
  li.Assign(lv1.Items[0]);
end;
0

Pierwszy przykład kopiuje tylko Caption'y, drugi nic nie kopiuje. Zrobiłem to normalnie jakbym dodawał itemy, co prawda troche dłużej trwa ale trudno:

New := List_Rej.Items.Add;
New.Caption := List_Temp.Items[i].Caption;
New.SubItems.Add(List_Temp.Items[i].SubItems.Strings[0]);
New.SubItems.Add(List_Temp.Items[i].SubItems.Strings[1]);
New.SubItems.Add(List_Temp.Items[i].SubItems.Strings[2]);
New.SubItems.Add(List_Temp.Items[i].SubItems.Strings[3]);
New.SubItems.Add(List_Temp.Items[i].SubItems.Strings[4]);

1 użytkowników online, w tym zalogowanych: 0, gości: 1