Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Ini файл [D7, XP]


Volkov ©   (2006-04-06 16:43:00) 

Здравствуйте...

Дано:
Есть 12 Edit,ов мне нужно, чтоб прога запоминалавесь текст и при следующем включении программы выводила сохраненный в ini текст.

Плиз, разъясните как сие осуществить???


Jeer   (2006-04-06 18:07:00) [1]


> Согласен.
> Поторопился.

Как и с этим, вероятно:

> 'I fuck her very nice'


Handle   (2006-04-06 17:49:00) [2]


> Джо ©   (06.04.06 17:32) [9]
Пардон, но это совсем не "то же самое".

Согласен.
Поторопился.


Джо   (2006-04-06 17:32:00) [3]

> [8] Handle   (06.04.06 17:22)
> Ну то же самое короче

Пардон, но это совсем не "то же самое".


Handle   (2006-04-06 17:22:00) [4]

Или так
Ну то же самое короче

unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, IniFiles, StdCtrls;

type
 TForm1 = class(TForm)
   Edit1: TEdit;
   procedure FormCreate(Sender: TObject);
   procedure FormDestroy(Sender: TObject);
 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
var
 F: TIniFile;
 names: TStringList;
 i: integer;
begin
 F := TIniFile.Create(ExtractFilePath(ParamStr(0)) + 'window.ini');
 Edit1.Text := F.ReadString('tools', 'edit1', 'I fuck her very nice');
 names := TStringList.Create;
 F.ReadSection('files', names);
 F.Destroy;
end;

procedure TForm1.FormDestroy(Sender: TObject);
var
 F: TIniFile;
 i: integer;
begin
 F := TIniFile.Create(ExtractFilePath(ParamStr(0)) + 'window.ini');
 F.WriteString('tools', 'edit1', Edit1.Text);
 F.Free;
end;
end.


Volkov   (2006-04-06 17:07:00) [5]


> Джо ©   (06.04.06 17:00) [6]


Псиба бааааааашое!  =))))


Джо   (2006-04-06 17:00:00) [6]

procedure SaveEdits (AFileName,ASection: string; Edits: array of TEdit);
var
 I: Integer;
 Ini: TIniFile;
begin
 Ini := TIniFile.Create(AFileName);
 try
   for I := 0 to High(Edits) do
     Ini.WriteString(ASection,Edits[I].Name,Edits[I].Text);
 finally
   Ini.Free;
 end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
 SaveEdits(
   ExtractFilePath(Application.ExeName) + 'settings.ini',
   'Edits',
   [Edit1,Edit2,Edit3]
 );
end;


1. Загрузка — домашнее задание ;)

2. В качестве подсказки для упрощения кода: у формы есть свойства Components и ComponentCount.


Джо   (2006-04-06 16:55:00) [7]

> ключ ь


Вот этого я от себя не ожидал :(


Джо   (2006-04-06 16:54:00) [8]

> [2] Volkov   (06.04.06 16:50)
> а как это привязать к Edit' ам ??????  и чтобы был один
> ini файл

ReadString/WriteString читают/пишут строкив указанную секцию и указанный ключь. Свойтсво Text у EEdit имеет тип " строка". Дальше понятно? Совет: в Делфи имеется контекстная справка.


Volkov   (2006-04-06 16:51:00) [9]

Прошу прощения за столь "идиотские вопросы", просто не сталкивался с этим =)))


Volkov   (2006-04-06 16:50:00) [10]


> Джо ©   (06.04.06 16:45) [1]


а как это привязать к Edit' ам ??????  и чтобы был один ini файл


Джо   (2006-04-06 16:45:00) [11]

> Плиз, разъясните как сие осуществить???

uses IniFiles;

var
 Ini: TIniFile;
...
 Ini.WriteString
 ...
 Ini.ReadString


Наверх

Титульная страница Поиск, карта сайта Написать письмо