|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Как сохранить нововведенные значения в 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
|
|||
|
|||
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, технику. |