Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.05.14;
Скачать: CL | DM;

Вниз

ListBox + INI   Найти похожие ветки 

 
Mozgan   (2006-04-26 13:37) [0]

Мастера здавствуйте!
Подскажите пожалуйста, в чем ошибка?
Мне нужно в ini записать содержимое листбокса, а потом загрузить обратно из инишки в листбокс.
Вот мой кусок - чета не получается. В чем ошибка не пойму никак...
Если не трудно объясните что к чему. Буду рад!

procedure TForm1.FormCreate(Sender: TObject);
begin
 ini:=TIniFile.Create(extractfilepath(paramstr(0))+"setup.ini");
 List.Items.Strings[k]:=ini.ReadString("path","dir",list.Items.Strings[i]);
 ini.Free;
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
 ini:=TIniFile.Create(extractfilepath(paramstr(0))+"setup.ini");
 for i:=0 to list.Items.Count-1 do
 ini.WriteString("path","dir",list.Items[i]);
 ini.Free;
end;


 
Плохиш ©   (2006-04-26 13:45) [1]


>  List.Items.Strings[k]:=ini.ReadString("path","dir",list.
> Items.Strings[i]);

Вот здесь ошибка, надо использовать метод Add


 
Mozgan   (2006-04-26 13:48) [2]

Если писать Add сразу же перед := то возникает ошибка.


 
Virgo_Style ©   (2006-04-26 13:48) [3]

Mozgan   (26.04.06 13:37)
List.Items.Strings[k]:=ini.ReadString("path","dir",list.Items.Strings[i]);


ошибка в необъявленной переменной k. Как минимум.
Значение по умолчанию странноватое выбрано.
Зачем по-разному сохранять и загружать - непонятно.
запись сделана неверно.
неясно, зачем вообще сохранять в ini (впрочем, хозяин - барин)


 
Плохиш ©   (2006-04-26 13:50) [4]


> Mozgan   (26.04.06 13:48) [2]
> Если писать Add сразу же перед := то возникает ошибка.

Мда, надо было в [1] слово МЕТОД выделять. Исправляюсь


 
Mozgan   (2006-04-26 13:51) [5]

Как это не объявлено? Я просто экономлю место :)


var
 Form1: TForm1;
 i, k: integer;
 ini: TIniFile;

procedure TForm1.FormCreate(Sender: TObject);
begin
 ini:=TIniFile.Create(extractfilepath(paramstr(0))+"setup.ini");
 List.Items[i]:=ini.ReadString("path","dir",list.Items[i]);
 ini.Free;
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
 ini:=TIniFile.Create(extractfilepath(paramstr(0))+"setup.ini");
 for i:=0 to list.Items.Count-1 do
 ini.WriteString("path","dir",list.Items[i]);
 ini.Free;
end;


Уважаемые мастера! третий день бьэс над этим вопросом.
Подскажите пожалуйста!


 
Плохиш ©   (2006-04-26 13:53) [6]


> Уважаемые мастера! третий день бьэс над этим вопросом.

Тут три варианта:
1. бьэс-я дальше.
2. Почитать основы.
3. Сменить профессию.


 
Mozgan   (2006-04-26 13:54) [7]

Попытался переправить мозги. Пишу так:


 list.Items.Add(ini.ReadString("path","dir",list.Items[i]));


 
Mozgan   (2006-04-26 13:55) [8]

Плохиш прекрати умоляю! Я лишь начинающий поэтому и трудности у меня.


 
Mozgan   (2006-04-26 14:05) [9]

Господа, подскажите тогда хотя бы, как сохранить все содержимое листбокса в ini.


 
Плохиш ©   (2006-04-26 14:22) [10]


> Mozgan   (26.04.06 14:05) [9]


procedure TForm1.FormCreate(Sender: TObject);
var
 i, max: Integer;
 sTmp: String;
begin
ini:=TIniFile.Create(extractfilepath(paramstr(0))+"setup.ini");
try
  max := ini.ReadInteger("path","count",-1);
  List.Items.Clear;
  for i := 0 to max do
  begin
    sTmp := ini.ReadString("path","dir" + IntToStr(i), "");
    if sTmp <> "" then List.Items.Add(sTmp);
  end;
finally
  ini.Free;
end;
end;

procedure TForm1.FormDestroy(Sender: TObject);
var
 i: Integer;
begin
ini:=TIniFile.Create(extractfilepath(paramstr(0))+"setup.ini");
try
  for i:=0 to list.Items.Count-1 do
    ini.WriteString("path","dir" + IntToStr(i),list.Items[i]);
finally
  ini.Free;
end;
end;


 
Плохиш ©   (2006-04-26 14:25) [11]


procedure TForm1.FormDestroy(Sender: TObject);
var
i: Integer;
begin
ini:=TIniFile.Create(extractfilepath(paramstr(0))+"setup.ini");
try
 ini.WriteInteger("path","count",list.Items.Count-1);  for i:=0 to list.Items.Count-1 do
   ini.WriteString("path","dir" + IntToStr(i),list.Items[i]);
finally
 ini.Free;
end;
end;



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

Текущий архив: 2006.05.14;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.039 c
2-1146044154
valdemot
2006-04-26 13:35
2006.05.14
Скрипты в программе


2-1145876006
cherman
2006-04-24 14:53
2006.05.14
Проблема


2-1145947777
ADDARK
2006-04-25 10:49
2006.05.14
SysAllocString, SysFreeString


6-1137234164
Volf_555
2006-01-14 13:22
2006.05.14
Есть ли более лучший способ изымания ссылки из IE?


4-1140098164
Nick Denry
2006-02-16 16:56
2006.05.14
Требуется наарисовать эллипсградиентный и с увеличивающейся прозр