|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Как сохранить результаты расчета в файле? Help Me!
Здравствуйте!
Написана простейшая программа, с помощью которой расчитывается площадь здания, где вводятся в поля ввода Edit ширина и длина,есть кнопка "Расчитать" и поле для вывода результата. Так же имеется поле для ввода названия здания (например "Дом№8"). Подскажите пожалуйста, как сохранить в файле введеную в форме информацию и полученные результаты, для того что бы выбрав из каталога этот файл открылась вышеописанная программа с введеными в поля исходными данными. Как сделать, что бы значек у этого файла, соответствовал программе расчета площади (был орегинальным). Как сделать так, что бы этот файл можно было открыть только этой программой (наверно своеобразное расширение). Прошу заметить, что я вообще очень новичок, по этому помогите пожалуйста понять процесс который Вы мне возможно предложите, если нет желания подробно описать решение вопроса, то хотя бы дайте ссылку на ресурс или литературу, я сам что то не могу победить эту проблему. Если нужна дополнительная информация по вопросу - выложу по первому требованию. Если Вы видите по другому способы реализации, то посоветуйте. Заранее благодарен. Андрей333 Последний раз редактировалось Андрей333, 17.05.2011 в 11:18. |
#2
|
|||
|
|||
самое самое простое, это использовать класс TIniFile, в инете очень много инфы по нему, это INI файлы, думаю их структуру вы видели где нибудь. Вид будет такой:
[Дом №8] Площадь=123 и т.д. Таким способ сможете хранить все замеры в одном файле. Можно конечно использовать базы данных, ту же MS Access например, но это будет уже сложнее. P.S.: для вызова окна сохранения/загрузки используйте компоненты TOpenDialog и TSaveDialog из вкладки Dialogs (если не путаю) взялся из неоткуда, ничего не прошу, помогаю просто так ICQ: 593977748 - стучать в случае КРАЙНЕЙ необходимости, ну, или если вы со Ставрополя Последний раз редактировалось Assistant, 17.05.2011 в 11:24. |
#3
|
||||
|
||||
И поскольку планируется свою иконку иметь то расширение такого файла придумайте свое, что-то уникальное например .ibi
Для запуска вашей программы с помощью такого файла надо просто зарегистрировать данное расширение в системе. Простейший вариант правой кнопочкой на вашем файле с настройками и указать файлом для запуска вашу программу. Но это еще не все. Так вы только зарегистрируете расширение, и будет только запускаться программа, но данные из файла не прочитаются. Для реализации чтения при запуске вам надо будет использовать специальную функции ParamStr: В общем выглядит это примерно так: Код:
procedure TForm1.FormCreate(Sender: TObject); Var ibi: TIniFile; begin if ParamCount = 0 then Exit; ibi := TIniFile.Create(ParamStr(1)); Edit1.Text := ibi.ReadString('Data','Edit1',''); Edit2.Text := ibi.ReadString('Data','Edit2',''); ibi.Free; end; procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction); Var ibi: TIniFile; begin ibi := TIniFile.Create(Copy(ParamStr(0),1,Length(ParamStr(0))-3)+'ibi'); ibi.WriteString('Data','Edit1',Edit1.Text); ibi.WriteString('Data','Edit2',Edit2.Text); ibi.Free; end; Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. Последний раз редактировалось Страдалецъ, 17.05.2011 в 12:27. |
#4
|
|||
|
|||
Спасибо Вам большое. Ваши ответы я обязательно сохраню, но видимо на потом. Видимо мне не хватает знаний для тог что бы разобраться. Может у кого нибудь есть ссылка на урок с примером подобно моему. Буду признателен.
|
#5
|
|||
|
|||
http://delphisource.narod.ru/Sources/TIniFile.htm
яж дал ссылку, тут всё подробно расписано по сохранению и чтению из INI файла. взялся из неоткуда, ничего не прошу, помогаю просто так ICQ: 593977748 - стучать в случае КРАЙНЕЙ необходимости, ну, или если вы со Ставрополя |
Этот пользователь сказал Спасибо Assistant за это полезное сообщение: | ||
Admin (01.10.2013)
|
#6
|
|||
|
|||
Кнопка "Сохранить данные"
Код:
procedure TForm1.Button1Click(Sender: TObject); begin if SaveDialog1.Execute then with TInifile.Create(SaveDialog1.FileName) Do begin WriteString('Дом','',Edit1.Text); WriteString('Длина','',Edit2.Text); WriteString('Ширина','',Edit3.Text); WriteString('Площадь','',Edit4.Text); end; end; end. |
#7
|
|||
|
|||
Цитата:
Мне можно было бы просто переписать код, но научиться программированию будет сложно. Хотелось бы в предоставляемом Вами коде видеть коментарии по каждой строке - это просьба. |
#8
|
|||
|
|||
Цитата:
|