Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Синтаксис
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 02.09.2017, 17:21
vers0 vers0 вне форума
Прохожий
 
Регистрация: 21.12.2013
Адрес: Донецк
Сообщения: 26
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию Ошибка "invalid pointer operation"

Проблема в CheckBox'e и сохранении его состояния в Ini-файл.
Не могу понять, как сделать так, что бы ставя галочку на CheckBox "Сохранить настройки программы" программа создавала Ini-файл и записывала туда значение самого чекбокса, т.е. при запуске он проставлялся автоматом, а при снятии удалял этот самый Ini-файл.

Вот что наваял (если поставить галку и перезапустить программу - выдает ошибку):

Код:
procedure TForm1.CheckBox2Click(Sender: TObject);
begin
Ini:=TIniFile.Create(ExtractFilePath(ParamStr(0))+'Settings.ini');
Ini.WriteBool('Settings','Save_Settings',CheckBox2.Checked);
Ini.Free;
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
if CheckBox2.Checked=false then
  begin
  DeleteFile('Settings.ini');
  end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
Ini:=TIniFile.Create(ExtractFilePath(ParamStr(0))+'Settings.ini');
CheckBox2.Checked:=Ini.ReadBool('Settings','Save_Settings',CheckBox2.Checked);
Ini.Free;
end;
Собственно не смотря на ошибку, все работает...

Просьба сильно тапками не кидаться, я первый раз использую INI, да и вообще не силен в программировании.
Ответить с цитированием
  #2  
Старый 02.09.2017, 17:26
vers0 vers0 вне форума
Прохожий
 
Регистрация: 21.12.2013
Адрес: Донецк
Сообщения: 26
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

Перенес
Код:
Ini:=TIniFile.Create(ExtractFilePath(ParamStr(0))+'Settings.ini');
Ini.WriteBool('Settings','Save_Settings',CheckBox2.Checked);
Ini.Free;

в FormClose, вроде работает, но не уверен, что это правильно.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 03:40.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter