Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2012.04.22;
Скачать: [xml.tar.bz2];

Вниз

ListView1, заполнение колонок из файлов   Найти похожие ветки 

 
gvozdkoff   (2011-12-26 12:52) [0]

всем привет, столкнулся с проблемой.
Задача.
На форме находится 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-го столбца.

Подскажите пожалуйста, в чем ошибка


 
KilkennyCat ©   (2011-12-26 13:00) [1]


> Есть 2 текстовых файла (в одном указывается название продукта
> , во втором дата).

формат хранения данных?


 
RWolf ©   (2011-12-26 13:05) [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;


 
gvozdkoff   (2011-12-26 14:29) [3]

вот  это дааа !!! спасибо большое, а то я чего то мудрил, да так и не получилось.
Еще раз спасибо за помощь



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2012.04.22;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.002 c
2-1324826113
Pcrepair
2011-12-25 19:15
2012.04.22
idHTTP1 и закачка стр. из ЯНДЕКС.ру


15-1324138253
Кто б сомневался
2011-12-17 20:10
2012.04.22
Аномальная погода


3-1274956779
Николай2010
2010-05-27 14:39
2012.04.22
Access+Delphi+Ado - про транзакции


2-1324724185
igorium
2011-12-24 14:56
2012.04.22
ShellTreeView - мультивыбор и рефреш


15-1324153802
Юрий
2011-12-18 00:30
2012.04.22
С днем рождения ! 18 декабря 2011 воскресенье





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский