Уроки по Delphi



         

Сохранение данных в реестр. На - часть 3


Form1.Height:=RegIniFile.ReadInteger('Form1','Form1Height',Form1.Height); // высота окна

Form1.Width:=RegIniFile.ReadInteger('Form1','Form1Width',Form1.Width); // ширина окна

// Восстановление состояния компонентов

CheckBox1.Checked:=RegIniFile.ReadBool('Form1','CheckBox1Checked',CheckBox1.Checked);

CheckBox2.Checked:=RegIniFile.ReadBool('Form1','CheckBox2Checked',CheckBox2.Checked);

ComboBox1.ItemIndex:=RegIniFile.ReadInteger('Form1','ComboBox1ItemIndex',ComboBox1.ItemIndex);

Edit1.Text:=RegIniFile.ReadString('Form1','Edit1Text',Edit1.Text);

if RegIniFile.ValueExists('MyFloat') then // если такой параметр существует, то:

Edit2.Text:=FloatToStr(RegIniFile.ReadFloat('MyFloat')); // чтение числа с запятой

if RegIniFile.ValueExists('MyDate') then // если такой параметр существует, то:

DateTimePicker1.Date:=RegIniFile.ReadDate('MyDate'); // чтение даты

RegIniFile.Free; // уничтожение вручную созданного объекта

end;

Процедура OnClose для окна Form1

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);

Var RegIniFile:TRegIniFile;

begin

RegIniFile:=TRegIniFile.Create('MySelfRegistryApplication');

RegIniFile.WriteInteger('Form1','Form1Left',Form1.Left);

RegIniFile.WriteInteger('Form1','Form1Top',Form1.Top);

RegIniFile.WriteInteger('Form1','Form1Height',Form1.Height);

RegIniFile.WriteInteger('Form1','Form1Width',Form1.Width);

// Сохранение состояния компонентов

RegIniFile.WriteBool('Form1','CheckBox1Checked',CheckBox1.Checked);

RegIniFile.WriteBool('Form1','CheckBox2Checked',CheckBox2.Checked);

RegIniFile.WriteInteger('Form1','ComboBox1ItemIndex',ComboBox1.ItemIndex);

RegIniFile.WriteString('Form1','Edit1Text',Edit1.Text);

RegIniFile.WriteFloat('MyFloat',StrToFloat(Edit2.Text));

RegIniFile.WriteDate('MyDate',DateTimePicker1.Date);

RegIniFile.Free;

end;

Обратите внимание, что в этом примере для записи состояния компонента Edit2 используется преобразование строковой величины в число. Если в этом компоненте будут недопустимые символы, то при закрытии окна будет выдаваться ошибка. Для разделения дробной от целой части (запятая), используйте соответствующий символ, установленный в конфигурации windows как символ разделителя.




Содержание  Назад  Вперед