як зберегти

Як зберегти / завантажити вміст ListView в файл?

Як зберегти / завантажити вміст ListView в файл, тобто потрібно якось пробігтися по всіх колонках і рядках.
Прошу збереження компонента не пропонувати.

"потрібно <.> пробігтися по всіх колонках і рядках "

Це я знаю. Але мені потрібен приклад, тому що я не можу сам це зробити.


> Я не можу сам це зробити

що не можеш ?
що тобі не зрозуміло. конкретно?

for i: = 0 to ListView.Items.Count - 1 do
begin
# XA0; // Що завгодно в контексті поточної рядки ListView.Items [i]
# XA0; // У тому числі і збереження "потрібних" колонок
end;

Припустимо, що у нас 2 колонки і N рядків:
збереження:
var list: Tstrings;

begin
list: = TStringlist.Create;
for i: = 0 to ListView.Items.Count - 1 do
begin
list.add (ListView.Items [i] .Caption);
list.add (ListView.Items [i] .SubItems.Strings [0]);
end;
list.SaveToFile ( "listview.dat");
list.free;
end;

Завантаження:
var list: Tstrings;

begin
list: = TStringlist.Create;
list.loadFormFile ( "listview.dat");
Ось тут як написати.
list.free;
end;

i: = 0;
while i begin
li: = ListView.Items.Add; // li: TListItem;
li.Caption: = list [i];
li.Subitems.Add (list [i + 1]);
inc (i, 2);
end;

шукай компонент sskListView.
я там "пригвинтив" методи запису / читання в / з файл (а). корявенько правда. зайвого багато, а прибрати влом. але працює. а заодно більш простий спосіб доступу до осередків сітки.

Схожі статті