ListView - lamerstwo, przykro mi...

0
  1. Dzień dobry, chciałbym dodać do ListView jeden ListItem,
    tyle że, jeśli tam nie ma takiego (Caption) to żeby został
    dodany, a jeśli jest, to nadpisany z nowymi SubItem'ami.
    Naskrobałem takie coś, ale nie działa i nawet
    Caption'ów nie dodaje. Nie mam pojęcia jak to się robi...

var
Li : TListItem;
begin
Li := TListItem.Create(ListView1.Items);
Li.Caption := 'Item 1';
Li.SubItems.Add('bla bla');
ListView1.Items.AddItem(Li, ListView1.Items.IndexOf(Li));
end;

  1. Jak dwa ListItem'y zamienić miejscami w kolejności ?
0

1

var Li:Tlistitem;
begin
Li:=TListItem.Create(ListView1.Items);
Li.Caption:='aaa';
Li.SubItems.Add('bbb');
Li.SubItems.Add('ccc');
ListView1.Items.Add.Caption:=Li.Caption;
ListView1.Items[0].SubItems:=Li.SubItems;
end;

  1. Moze troche glupia metoda ale mozesz tak:

var a, b:array[0..1] of string;
Li:array[0..1] of TlistItem;
begin

a[0]:=ListView1.Items[0].Caption;
a[1]:=ListView1.Items[0].SubItems[0];
b[0]:=ListView1.Items[1].Caption;
b[1]:=ListView1.Items[1].SubItems[0];

ListView1.Clear;

Li[0]:=ListView1.items.add;
Li[0].Caption:=b[0];
Li[0].SubItems.add(b[1]);
Li[1]:=ListView1.items.add;
Li[1].Caption:=a[0];
Li[1].SubItems.add(a[1]);
end;

//Wiesz co to jest tag ???? po kij go wprowadzano skoro twoj kod to oczojeB*** błękit...

0

Sprawdzona metoda:

var ListItem: TListItem;
begin
ListItem := ListView.Items.Add;
ListItem.Caption := 'caption';
ListItem.SubItems.Add('SubItem');
end;

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