Текущий архив: 2006.12.31;
Скачать: CL | DM;
ВнизTEDIT Найти похожие ветки
← →
Начинающий5 (2006-12-10 11:54) [0]Здраствуйте Мастера
помогите кто чем сможет
как сохранить текст в Tedit т.е при следуещем запуске программы появлялся текст который был сохранен
← →
Anatoly Podgoretsky © (2006-12-10 11:59) [1]> Начинающий5 (10.12.2006 11:54:00) [0]
В реестре или в файле, вариантов множество. Реестр проще.
← →
Начинающий5 (2006-12-10 12:02) [2]
> Anatoly Podgoretsky
Напишите пожалуйста маленнький примерчик!
← →
ctudent © (2006-12-10 12:04) [3]Используй INIFILE
Пример.
Uses Windows, Messages, ........, IniFiles;
procedure SaveEdit1;
procedure LoadEdit1;
var
IniF: TIniFile;
procedure SaveEdit1.IniFile;
begin
IniF :=TiniFile.Create(".\edit.ini");
IniF.WriteString("Text", "Edit", Edit1.Text");
IniF.Free;
end;
procedure LoadEdit1.IniFile;
begin
IniF :=TiniFile.Create(".\edit.ini");
edit1.text :=IniF.ReadString("Text", "Edit", Edit1.Text);
IniF.Free;
end;
На событие формы OnDestroy вызываешь процедуры SaveEdit1,
На событие формы OnCreate вызываешь процедуру LoadEdit1.
Есть и множество других способов. Это самый примитивный но самый распространённый.
← →
Начинающий5 (2006-12-10 12:06) [4]
> ctudent
Спасибо!!!
← →
ctudent © (2006-12-10 12:06) [5]
> Начинающий5 (10.12.2006 11:54:00) [0]
>
> В реестре или в файле, вариантов множество. Реестр проще.
>
> <Цитата>
Ну для кого как? С реестром в принципе тоже несложно. Но ини файл скорее проще будет для начинающего
← →
Anatoly Podgoretsky © (2006-12-10 12:20) [6]> Начинающий5 (10.12.2006 12:02:02) [2]
with TRegistry do
try
OpenKey(....);
WriteString("Ident", Edit.Text);
finally
Free;
end;
← →
Anatoly Podgoretsky © (2006-12-10 12:22) [7]> ctudent (10.12.2006 12:06:05) [5]
Чем же оно будет проще, кроме кучи определенных проблем, типа тех которые ты сразу заложил в свой пример.
← →
ctudent © (2006-12-10 12:28) [8]
> Чем же оно будет проще, кроме кучи определенных проблем,
> типа тех которые ты сразу заложил в свой пример.
Если программа будет переносится на другой компьютер то данные сохранённые в реестре вы как будете выковыривать?
← →
Anatoly Podgoretsky © (2006-12-10 12:34) [9]> ctudent (10.12.2006 12:28:08) [8]
А тебе вообще ничего не придется выковыривать, поскольку даже записать не сможешь.
А насчет умения пользование regedit и правил переноса (инсталяции) я вообще молчу, видимо ты далек от этого. У тебя потенциально нерабочий код.
← →
ctudent © (2006-12-10 12:37) [10]
> Anatoly Podgoretsky
Отойдём от разногласий. Вы по своему делаете я по своему каждый программист пишит по своему. И не зачем мне кажется тут доказывать друг другу что какой стиль лучше?
← →
Anatoly Podgoretsky © (2006-12-10 13:16) [11]> ctudent (10.12.2006 12:37:10) [10]
Я не доказываю какой стиль лучше, а то что приведенный код нерабочий, а если повезет то и опасный. А доказательство стиля оставлю тебе.
← →
MsGuns © (2006-12-10 13:42) [12]>ctudent © (10.12.06 12:04) [3]
Ошибки в коде:
1. Называть ini-file над интуитивно понятно. Например, "Settings.ini", имя файла лучше прописывать глобальной константой.
2. IniF :=TiniFile.Create(".\edit.ini"); - так писАть нельзя. Если предполагается инишку держать в папке с приложением, то надо
TIniFile.Create(ExtractFilePath(Application.ExeName)+CONST_APPLICATIO_INIFILENAME+".ini");
3. IniF.WriteString("Text", "Edit", Edit1.Text");
4. Автоматическое сохранение настроек по завершении программы чревато неприятностями последующих запусков после "нечаянного" завершения. Плэтому изменение и сохранение настроек лучше всего делать в специальном режиме как это реализовано в профессионально сделанном интерфейсе. А если все же сохраняете, то не следует это детать в OnDestroy - вместо этого использейте ONClose.
Страницы: 1 вся ветка
Текущий архив: 2006.12.31;
Скачать: CL | DM;
Память: 0.47 MB
Время: 0.04 c