Главная страница
    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-1325060038
ply
2011-12-28 12:13
2012.04.22
Присвоить массив


2-1324569664
brother
2011-12-22 20:01
2012.04.22
Закрытие файла...


15-1324457180
Mysql_error
2011-12-21 12:46
2012.04.22
Настроить коннет к mysql с разных компьютеров


15-1323861558
картман
2011-12-14 15:19
2012.04.22
зима пришла...


2-1324889544
gvozdkoff
2011-12-26 12:52
2012.04.22
ListView1, заполнение колонок из файлов





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский