![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
ListView1, заполнение колонок из файлов [D7, XP]
gvozdkoff © (2011-12-26 12:52:00)всем привет, столкнулся с проблемой.
Задача.
На форме находится ListView, который имеет 2 столбца.
Есть 2 текстовых файла (в одном указывается название продукта , во втором дата).
И вот надо как то сделать так, чтобы в один 1-й столбец загружались записи из 1-го файла, а во 2-й столбец загружались данные из 2-го файла.
В первый столбец загружаю нармально
procedure TForm1.Button7Click(Sender: TObject);
var
i:integer;
DSL,SL: TStringList;
begin
////////////////////
SL := TStringList.Create;
try
SL.LoadFromFile('link.txt');
SL.Text := StringReplace(SL.Text, '##'#13#10, '', [rfReplaceAll]);
i := 0;
while i < SL.Count do
begin
with ListView1.Items.Add do
begin
Caption := SL[i];
end;
Inc(i);
end;
finally
end;
SL.Free;
Вот это был первый вариант. пробую сListview1.Items.Item[k].SubItems.LoadFromFile
procedure TForm1.Button8Click(Sender: TObject);
var
i, k , s:integer;
DSL,SL: TStringList;
LI, SLI:string;
begin
SL := TStringList.Create;
DSL := TStringList.Create;
while i < SL.Count do begin
with (ListView1.Items.Add()) do begin
Caption := LI;
SubItems.Add(SLI);
end;
end;
try
SL.LoadFromFile('link.txt');
DSL.LoadFromFile('data.txt');
SL.Text := StringReplace(SL.Text, '##'#13#10, '', [rfReplaceAll]);
DSL.Text := StringReplace(DSL.Text, '##'#13#10, '', [rfReplaceAll]);
i := 0;
while i < SL.Count do
begin
with (ListView1.Items.Add()) do
begin
caption := SL[i];
end;
Inc(i);
end;
k := 0;
while k < DSL.Count do
begin
with (ListView1.Items.Add()) do
begin
SLI:= DSL[k]; Listview1.Items.Item[k].SubItems.LoadFromFile('data.txt');
end;
Inc(k);
end;
finally
end;
получается что дата выставляется 1 раз к первой строке, в вариациях выставляется одна и та же дата для всех записей 1-го столбца.
Подскажите пожалуйста, в чем ошибка
gvozdkoff (2011-12-26 14:29:00) [1]вот это дааа !!! спасибо большое, а то я чего то мудрил, да так и не получилось.
Еще раз спасибо за помощь
RWolf (2011-12-26 13:05:00) [2]
slCap.LoadFromFile('captions.txt');
sl1.LoadFromFile('column1.txt');
sl2.LoadFromFile('column2.txt');
Assert((slCap.Count=sl1.Count) and (slCap.Count=sl2.Count), 'Число строк в файлах не совпадает!');
for i:=0 to slCap.Count-1 do begin
with ListView1.Items.Add() do begin
Caption := slCap[i];
SubItems.Add(sl1[i]);
SubItems.Add(sl2[i]);
end;
end;
KilkennyCat (2011-12-26 13:00:00) [3]
> Есть 2 текстовых файла (в одном указывается название продукта
> , во втором дата).
формат хранения данных?