Уроки по Delphi



         

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


RegIniFile:=TRegIniFile.Create('MySelfRegistryApplication'); // создание реестровой переменной

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

end;

Подробно о командах чтения и записи.

Чтение и запись целочисленного значения, типа integer:

RegIniFile.ReadInteger(СЕКЦИЯ,ПАРАМЕТР,ЗНАЧЕНИЕ_ПО_УМОЛЧАНИЮ);

RegIniFile.WriteInteger(СЕКЦИЯ,ПАРАМЕТР,ЗНАЧЕНИЕ);

Дальше аналогично вышерассмотренной команде следует чтение и запись:

двоичного значения ReadBool и WriteBool;

строкового значения ReadString и WriteString;

Если необходимо сохранить данные не в отдельной секции, а в ключе, то вместо параметра СЕКЦИЯ необходимо указать пустую строку, или две кавычки ''.

Сохранение остальных типов данных осуществляется не в секции, а непосредственно в ключе. Для этих команд при обращении к значениям нужно проверять их наличие. Например, если соответствующие параметры не были созданы, то их чтение приведет к ошибке. проверка их наличия производится командой

RegIniFile.ValueExists(ПАРАМЕТР)

Эта команда является функцией, возвращающей истинно (true) или ложно (false), и ее можно использовать в паре с чтением определенного параметра. Например, чтение числа с плавающей точкой:

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

Edit2.Text:=FloatToStr(RegIniFile.ReadFloat('MyFloat')); // прочитать параметр

Пример.

В новом проекте помещаем в форму следующие компоненты:

· 2 компонента CheckBox

· компонент ComboBox, установите в свойстве Items некоторые строки.

· 2 компонента Edit

· компонент DateTimePicker (страница Win32 палитры компонентов)

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

procedure TForm1.FormShow(Sender: TObject);

Var RegIniFile:TRegIniFile; // реестровый объект

begin

RegIniFile:=TRegIniFile.Create('MySelfRegistryApplication'); // создание реестровой переменной

Form1.Left:=RegIniFile.ReadInteger('Form1','Form1Left',Form1.Left); // левая граница окна

Form1.Top:=RegIniFile.ReadInteger('Form1','Form1Top',Form1.Top); // верхняя граница окна




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