Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 27.04.2011, 00:11
crazypiters crazypiters вне форума
Прохожий
 
Регистрация: 26.04.2011
Сообщения: 4
Репутация: 10
По умолчанию Как сохранить нововведенные значения в Edit.Text и не потерять при закрытии проги

У меня несколько Edit.Text и в каждом стоит какоето число.
как можно после ввода других чисел и закрыв прогу, сохранить изменение...

вроде можно в txt но я могу только 1 Edit.Text сохранить в 1 txt....а у меня их 16
а еще и значения этих едитов задействованы

Код:
 procedure TForm2.RadioGroup8Click(Sender: TObject);
 begin
 if RadioGroup8.ItemIndex=0 then b:=StrToFloat(Edit1.Text);
 if RadioGroup8.ItemIndex=1 then b:=StrToFloat(Edit2.Text);
 if RadioGroup8.ItemIndex=2 then b:=StrToFloat(Edit3.Text);
 if RadioGroup8.ItemIndex=3 then b:=StrToFloat(Edit4.Text);
 if RadioGroup8.ItemIndex=4 then b:=StrToFloat(Edit5.Text);
 if RadioGroup8.ItemIndex=5 then b:=StrToFloat(Edit6.Text);
 if RadioGroup8.ItemIndex=6 then b:=StrToFloat(Edit7.Text);
 if RadioGroup8.ItemIndex=7 then b:=StrToFloat(Edit8.Text);
 if RadioGroup8.ItemIndex=8 then b:=StrToFloat(Edit9.Text);
 if RadioGroup8.ItemIndex=9 then b:=StrToFloat(Edit10.Text);
 if RadioGroup8.ItemIndex=10 then b:=StrToFloat(Edit11.Text);
 if RadioGroup8.ItemIndex=11 then b:=StrToFloat(Edit12.Text);
 if RadioGroup8.ItemIndex=12 then b:=StrToFloat(Edit13.Text);
 if RadioGroup8.ItemIndex=13 then b:=StrToFloat(Edit14.Text);
 if RadioGroup8.ItemIndex=14 then b:=StrToFloat(Edit15.Text);
 if RadioGroup8.ItemIndex=15 then b:=StrToFloat(Edit16.Text);
 if RadioGroup8.ItemIndex=16 then b:=StrToFloat(Edit17.Text);
 end;

может кнонибудь пример показать как сохранять изменения в txt или если это возможно без задействования txt
Ответить с цитированием
  #2  
Старый 27.04.2011, 00:44
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,026
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

1. Твой код можно написать гораздо короче и оптимальнее. Для начала через case. А если уж совсем подумать, то как-то так:

Код:
var
  edt : TEdit;
begin
  edt := FindComponent('Edit'+IntToStr(RadioGroup8.ItemIndex+1));
  If edt <> Nil Then
     b := StrToFloat(edt.Text);
end;

2. Теперь непосредственно по сохранению и чтению.
Можно делать в реестре, можно и Ini-файле.
Вот пример для Ini-файла:

Код:
uses IniFiles;

// Запись
var
  Ini : TIniFile;
begin
  Ini := TIniFile.Create(ChangeFileExt(Application.ExeName,'.ini'));
  Ini.WriteString('Edits','Edit1',Edit1.Text);
  Ini.WriteString('Edits','Edit2',Edit2.Text);
  ...
  Ini.WriteString('Edits','Edit17',Edit17.Text);
  Ini.Free;
end;

// Чтение
var
  Ini : TIniFile;
begin
  Ini := TIniFile.Create(ChangeFileExt(Application.ExeName,'.ini'));
  Edit1.Text := Ini.ReadString('Edits','Edit1',0);
  Edit2.Text := Ini.ReadString('Edits','Edit2',0);
  ...
  Edit17.Text := Ini.ReadString('Edits','Edit17',0);
  Ini.Free;
end;

Для сокращения кода можно использовать приведенную выше, в п. 1, технику.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 22:09.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter