Логин: Пароль:    Регистрация Всеми возможностями сайта можно пользоваться
только после авторизации.
   Забыли пароль?

Поиск
L



Статистика
u
Пользователи онлайн: нет
Гостей онлайн: 7
Всего онлайн: 7
Зарегистрировано юзеров: 5860
Комментариев на сайте: 626
Новый юзер: Craigwoult



Последние комментарии
c
s1t1n прокомментировал "Урок 9 - Экспорт .3DS модели из 3DS max 2009 в OpenGL":
Отлично.
niaz-gtn прокомментировал "Урок 71 - Работа с сжатыми файлами":
7z.dll - приложите.



Мы в соцсетях
c
Delphi
Урок 67 - INI файлы

   INI файлы - это удобный способ хранения настроек программы, ini файлы представляют собой простые текстовые файлы доступных для редактирования.

   Мы напишем пример, программа будет запоминать размеры и положения формы и восстанавливать их при запуске.

   Для начала добавим в секцию uses модуль IniFiles, и создадим глобальную переменную Settings: TINIFile;

   В FormCreate напишем код:

procedure TForm1.FormCreate(Sender: TObject);
begin
  Settings:=  TIniFile.Create(GetCurrentDir + '\config.ini'); 	// Создаем ini файл
  Form1.Top:= Settings.ReadInteger('Form', 'Top', 200);     	// Читаем свойство Top
  Form1.Left:= Settings.ReadInteger('Form', 'Left', 200);       // Читаем свойство Left
  Form1.Width:= Settings.ReadInteger('Form', 'Width', 200); 	// Читаем свойство Width
  Form1.Height:= Settings.ReadInteger('Form', 'Height', 200);   // Читаем свойство Height
end;


   Если ничегго не указать в TIniFile.Create то файл создастся в C:\Windows\.

   Разберём функцию: ReadInteger(const Section, Ident: string; Default: Longint): Longint;

  • Section - Имя секции с параметрами
  • Ident - Имя параметра
  • Default - Стандартное значение если параметр не был найден


   Как видите при компиляции ничего не появилось, а просто форма изменила свои габариты, чтобы появился файл с настройками надо их записать.

   В обработчике OnClose Form1 пишем код:
procedure TForm1.FormCreate(Sender: TObject);
begin
  Settings.WriteInteger('Form', 'Top', Form1.Top);       //Записываем свойство Top
  Settings.WriteInteger('Form', 'Left', Form1.Left);     //Записываем свойство Left
  Settings.WriteInteger('Form', 'Width', Form1.Width);   //Записываем свойство Width
  Settings.WriteInteger('Form', 'Height', Form1.Height); //Записываем свойство Height
end;


   При закрытии параметры буду сохранятся. Попробуйте по растягивайте форму, по перемещайте ее и закройте, затем откройте и все сохранится.

Удачи!
Встретимся в следующем уроке!


Источник: www.thedelphi.ru
Автор: Савельев Александр
Опубликовано: 22 Июля 2013
Просмотров:

Урок 66 - Ресурсы в Delphi, (часть 2/2) Урок 68 - Реестр Windows, (часть 1/2)

Зарегистрируйтесь или авторизуйтесь, чтобы добавлять комментарии.



аватар Добавил: RinDproramer [Новичок] Дата: 2013-07-30
Ini файлы мне очень помогли, благодаря им, можно делать сохранения своей игры.




аватар Добавил: RinDproramer [Новичок] Дата: 2013-07-31
Можно дополнить тем, что после *Read* и *Write* может идти не только Integer, а любой тип переменной. Например: WriteString, ReadReal.