Denhell |
15-05-2005 19:12 324363 |
Помогите с сохранением настроек проги
Помогите, как сделать так, чтобы прога сохраняла значения CheckBox. Т.е. запускаю я прогу, помечаю CheckBox и закрываю прогу. Открываю вновь, и CheckBox стоит помеченным.
Пожалуйста растолкуйте поподробнее.
|
Savant |
15-05-2005 19:42 324371 |
Среда разработки?
|
Denhell |
15-05-2005 20:16 324378 |
Ах да, простите Borland Delphi 6.
|
Savant |
16-05-2005 03:17 324428 |
Есть минимум 2 популярных способа:
1. Создание потомка класса и в его конструкторе/деструкторе загружать/сохранять информацию. В данном случае такой подход имхо громозок.
2. Обработка событий OnCreate и OnDestroy формы, на которой расположен контрол. Например следующим образом:
Код:
procedure TForm1.FormCreate(Sender: TObject);
var
F: TiniFile;
begin
// открытие конфигурационного файла
F := TiniFile.Create(Copy(Application.ExeName, 1, Length(Application.ExeName) - Length(ExtractFileExt(Application.ExeName))) + '.cfg');
// чтение значения для контрола CheckBox1
CheckBox1.Checked := F.ReadBool('main', CheckBox1.Name, False); // третий параметр - значение по умолчанию (напр. при первом запуске программы)
// закрытие файла
F.Free
end;
procedure TForm1.FormDestroy(Sender: TObject);
var
F: TiniFile;
begin
F := TiniFile.Create(Copy(Application.ExeName, 1, Length(Application.ExeName) - Length(ExtractFileExt(Application.ExeName))) + '.cfg');
F.WriteBool('main', CheckBox1.Name, CheckBox1.Checked);
F.Free
end;
Также значения можно хранить и в реестре. Реализация мало чем отличается от данной.
|
Время: 15:48.
© OSzone.net 2001-