Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.08.07;
Скачать: CL | DM;

Вниз

Сохранение!!!   Найти похожие ветки 

 
Ivolg ©   (2003-07-23 10:56) [0]

Здраствуйте!Помогите мне пожайлуста люди добрые!
Как сохранить измемнения в своём приложении?На пример: если в приложении поменяешь цвет на пример белый,то после закрытия прриложения,а потом открытие пририложения должен быть цвет который
мы поменяли.Спасибо!!!


 
BizonWar   (2003-07-23 11:00) [1]

Используй TIniFile или пиши в реестр.


 
gek ©   (2003-07-23 11:01) [2]

Ну в ini наверное проще всего

Посм в FAQ. Вопрос часто задается


 
Ivolg ©   (2003-07-23 11:21) [3]

Я чёто не нашёл в FAQ.


 
VJack   (2003-07-23 11:33) [4]

Вот тебе пример:

function TfrmMain.SaveSettings: Boolean;
var
fn: String;
begin
Result := True;
fn := ChangeFileExt(Application.ExeName, sIniExt);
if(FileExists(fn))then begin
if(Not DeleteFile(fn))then Result := False;
end;
with TIniFile.Create(fn) do begin
try
WriteString(sSec,sK1,txtPathToBat.Text);
WriteInteger(sSec,sK4,StrToInt(lblMin.Caption));
if rbDelete.Checked then
WriteBool(sSec, sK5, True)
else
WriteBool(sSec, sK5, False);
finally
Free;
end;
end;
end;

А так считывать:

function TfrmMain.LoadSettings: Boolean;
var
fn: String;
i: Integer;
tm: Boolean;
begin
Result := True;
fn := ChangeFileExt(Application.ExeName, sIniExt);
if(FileExists(fn))then begin
with TIniFile.Create(fn) do begin
try
txtPathToBat.Text := ReadString(sSec,sK1,"");
if((txtPathToBat.Text = "") Or (Not FileExists(txtPathToBat.Text)))then
Result := False;
txtPathToRoot.Text := ReadString(sSec,sK2,"");
if((txtPathToRoot.Text = "") Or (Not DirectoryExists(txtPathToRoot.Text)))then
Result := False;
txtIniName.Text := ReadString(sSec,sK3,"");
if(txtIniName.Text = "")then Result := False;
i := ReadInteger(sSec,sK4,5);
if(Not(i in [1..120]))then i := 5;
lblMin.Caption := IntToStr(i);
trBar.Position := i;
TMR.Interval := i * 60 * 1000;
tm := ReadBool(sSec, sK5, False);
if tm then rbDelete.Checked := True
else rbStore.Checked := True;
finally
Free;
end;
end;
end else Result := False;
end;


 
Ivolg ©   (2003-07-23 11:43) [5]

VJack Спасибо!!!


 
Sandman25 ©   (2003-07-23 11:47) [6]

if rbDelete.Checked then
WriteBool(sSec, sK5, True)
else
WriteBool(sSec, sK5, False);

->

WriteBool(sSec, sK5, rbDelete.Checked);


tm := ReadBool(sSec, sK5, False);
if tm then rbDelete.Checked := True
else rbStore.Checked := True;
->

rbDelete.Checked := ReadBool(sSec, sK5, False);


 
Armen   (2003-07-23 23:21) [7]

TWriter.WriteRootComponent
TReader.ReadRootComponent

Пишет и читает все published properties Control-а и Owned Components.

Delphi Form Designer так пишет и читает ресурсы форм.


 
Immortal_Death ©   (2003-07-24 00:17) [8]

тока вот пример VJack не оптимизирован, просто ужасно... лишний код...


 
Германн ©   (2003-07-24 04:17) [9]

2 Immortal_Death © (24.07.03 00:17)
>тока вот пример VJack не оптимизирован, просто ужасно... лишний код...

Этот пример - не то чтобы "не оптимизирован", он вообще "кривой", если речь идет о стандартных ini - файлах. Поскольку совмещает два различных варианта работы с файлом.



Страницы: 1 вся ветка

Текущий архив: 2003.08.07;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.013 c
3-20441
SeRg_2003
2003-07-17 12:24
2003.08.07
Как полностью очитить ClientDataSet?


14-20695
iXuSs
2003-07-19 23:18
2003.08.07
Нужна программа!


14-20709
Ivolg
2003-07-23 11:11
2003.08.07
Эквалазер!!!


14-20691
VJack
2003-07-23 11:28
2003.08.07
Компоненты шифрования


3-20403
me2
2003-07-16 13:05
2003.08.07
IB выдает такую вот ошибку