ListView i kolumny

0

Mój problem jest pewnie tak banalny i oczywisty, że nawet nie ma go w FAQ. Ale oprócz FAQ przeglądałem też pomoc Delphi i nie znalazłem odpowiedzi. Zaznaczę, że to moja pierwsza przygoda z tym komponentem :P A mianowicie chodzi mi o to, jak zmienić jakąś wartość w którejś z kolumn?

Powiedzmy, że mam 3 kolumny o nazwach: NAZWA, FOLDER ŹRÓDŁOWY i FOLDER DOCELOWY.

Niech nazwa pierwszego itemu będzie ITEM 1.
I teraz jak programowo zmienić wartość FOLDER ŹRÓDŁOWY tego itemu na np: 'C:\Piwo' ?

Czyli wszystko powinno wyglądać jakoś tak:

NAZWA FOLDER ŹRÓDŁOWY F. DOCELOWY

Item 1 C:\Piwo C:\Alkohol

0

to chcesz w końcu zmienić nazwe kolumny, czy itemu ? :-|

ListView1.Coulmns[1].Caption := 'costam';
ListView1.Items[nr_wiersza].subItems[nr_subitema] := 'costam';

w sumie to można sie takie coś domyślić samemu...

Program bez bugów to czyste lamerstwo

user image

0

OK, myślałem, że SubItems służy do czegoś innego. Ale mam nowy problem. Powiedzmy, że listView jest pusty, a ja chcę dodać jakiś item z dwoma subItemami.
Item niech się zowie: "ITEM 1", a suby: "C:\Piwo" i "C:\Wodka".

Ja próbuję tak:

listView.AddItem('Item 1', listView);
listView.Items[0].SubItems[1]:='C:\Piwo';
listView.Items[0].SubItems[2]:='C:\Wodka';

Ino wyskakuje mi błąd:
Listindex out of bounds.

Domyślam się, że te subItemy też trzeba jakoś najpierw dodać, tylko nie mam pojęcia jak...

0
var
 ListItem:tlistitem;
begin
  with ListView do
  begin
      ListItem := Items.Add;
      ListItem.Caption := '';
      ListItem.SubItems.Add('');
      ListItem.SubItems.Add('');
  end;

A co do błędu to

listView.Items[0].SubItems[0]:='C:\Piwo';
listView.Items[0].SubItems[1]:='C:\Wodka';


0

var
ListItem:tlistitem;
begin
with ListView do
begin
ListItem := Items.Add;
ListItem.Caption := '';
ListItem.SubItems.Add('');
ListItem.SubItems.Add('');
end;

THX ziom :) Działa

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