procedure TForm1.Load;
Var
IniFile: TIniFile;
begin
i:=0;
IniFile:= TIniFile.Create(ExtractFilePath(Application.ExeName)+cfgfile);
try
IniFile.ReadSection('items', Checklistbox1.Items);
for i := 0 to Checklistbox1.Items.Count - 1 do
CheckListbox1.Checked := IniFile.ReadBool('items', Checklistbox1.Items, False);
finally
IniFile.Free;
end;
end;
Работа с Ini-файлом
У меня почему-то не получается сохранить в INI- файл все итемы которые есть в CheckListBox... Значит на форме имеется CheckListBox и 2-е кнопки... 1-я для добавления нового Итема..., а 2-я для удаления выбранного... При старте, программа загружает из INI-файла итемы, используя данную процедуру:
Код:
Вот код который я использую для сохранения и вызываю его когда добовляю/удаляю итем:
Код:
procedure TForm1.save;
Var
IniFile: TIniFile;
begin
i:=0;
IniFile:= TIniFile.Create(ExtractFilePath(Application.ExeName)+cfgfile);
try
for i := 0 to Checklistbox1.Items.Count - 1 do
IniFile.WriteBool('items', Checklistbox1.Items, Checklistbox1.Checked);
finally
IniFile.Free;
end;
end;
Var
IniFile: TIniFile;
begin
i:=0;
IniFile:= TIniFile.Create(ExtractFilePath(Application.ExeName)+cfgfile);
try
for i := 0 to Checklistbox1.Items.Count - 1 do
IniFile.WriteBool('items', Checklistbox1.Items, Checklistbox1.Checked);
finally
IniFile.Free;
end;
end;
При добавление нового итема, программа сохраняет все нормально... Но когда я удаляю какойнибудь Итем... прога не сохраняет изминения в INI-файле... Т.е. тот итем который я вроде удалил из CheckListBox и сохранил с помощью процедуры Save... всеравно остается в INI-файле...
Вопрос конечно же так сказать "ламерский" )... но я новечек и совсем недавно начал изучать Delphi... Помогите пожалуйста решить данную проблему... я долго мучался, но нечего не получилось... Будьте добры, подправьте процедуру сохранения немного..., буду очень благодарен... или подскажите что в той процедуре я делаю не так... Надеюсь вы поняли что я имею ввиду.
Заранее Спасибо!
То что удалено из checkbox'a в ini не сохраняется - там остается старое значение. Перед сохранением удаляй старый ini-файл.
Цитата: IL84
То что удалено из checkbox'a в ini не сохраняется - там остается старое значение. Перед сохранением удаляй старый ini-файл.
А как быть с остальными итемами которые должны оставаться...? Мне ведь нужно чтоб удалился только тот который/которые я выбрал...?
Помогите плиз... очнень нужно решить данную проблему...
Кто знает - помогите пожалуйста
Очисти секцию (EraseSection) и запиши состояние Checked всех существующих в данный момент items
Особенно тебе mfender за совет... )
Цитата: mfender
Очисти секцию (EraseSection) и запиши состояние Checked всех существующих в данный момент items
Наверное я сделаю так как ты сказал.
Спасибо )