|
|
|
Как работает сохранение параметров, вводимых пользователем в форме при закрытии этой формы
|
|||
|---|---|---|---|
|
#18+
Передали исходники проекта, написанного на Lazarus. При запуске на исполнение открывается форма с несколькими параметрами, которые указывает пользователь. После закрытия формы и повторного открытия все введенные пользователем параметры уже заполнены, т.е. они как-то сохраняются при закрытии формы и восстанавливаются при открытии формы. В каталоге запуска есть файл settings.ini, в котором видно сохраненные значения параметров: [TApplication.Form1] ComboBox1_ItemIndex=0 DirectoryEdit1_Directory=D:\!_TEST Edit1_Text=Login Edit2_Text=Password FileNameEdit1_FileName=D:\Base\Base2017.gdb Edit3_Text= Date1=01.01.2017 Date2=31.12.2017 При доработке на форму был добавлен еще один параметр, но его значение не восстанавливается после повторного открытия формы. В коде не нашел процедур, которые бы сохраняли параметры при закрытии формы и восстанавливали при открытии. Где может быть спрятан механизм сохранения/восстановления параметров формы? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2018, 16:30 |
|
||
|
Как работает сохранение параметров, вводимых пользователем в форме при закрытии этой формы
|
|||
|---|---|---|---|
|
#18+
TIniPropStorage? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2018, 16:32 |
|
||
|
Как работает сохранение параметров, вводимых пользователем в форме при закрытии этой формы
|
|||
|---|---|---|---|
|
#18+
Да, нашел на форме объект IniPropStorage1 со свойством InitFileName = settings.ini Осталось понять как все это работает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2018, 16:40 |
|
||
|
Как работает сохранение параметров, вводимых пользователем в форме при закрытии этой формы
|
|||
|---|---|---|---|
|
#18+
Где может быть спрятан механизм сохранения/восстановления параметров формы? Если форма многократно унаследована, то в одном из предков. А в событиях формы ОнСлосе, ОнКлосеКвери, ОнДестрой точно нет нужных ссылок ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2018, 17:00 |
|
||
|
Как работает сохранение параметров, вводимых пользователем в форме при закрытии этой формы
|
|||
|---|---|---|---|
|
#18+
Точно, есть события на OnShow и OnClose, проглядел. Но там описано сохранение и восстановление только 2-х параметров из 8: Date1 и Date2. А как сохраняются/восстанавливаются остальные шесть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2018, 17:13 |
|
||
|
Как работает сохранение параметров, вводимых пользователем в форме при закрытии этой формы
|
|||
|---|---|---|---|
|
#18+
В коде форма описана как: TForm1 = class(TForm) Правильно понимаю, что форма создана на основе базового класса и ни от чего не наследована? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2018, 17:16 |
|
||
|
Как работает сохранение параметров, вводимых пользователем в форме при закрытии этой формы
|
|||
|---|---|---|---|
|
#18+
ГлазуновА как сохраняются/восстанавливаются остальные шесть? Автоматически... Заглянуть в исходники дело пары минут. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2018, 17:51 |
|
||
|
Как работает сохранение параметров, вводимых пользователем в форме при закрытии этой формы
|
|||
|---|---|---|---|
|
#18+
А почему тогда так же автоматически не сохраняется значение нового элемента, добавленного на форму? Куда смотреть в исходниках? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.03.2018, 08:06 |
|
||
|
Как работает сохранение параметров, вводимых пользователем в форме при закрытии этой формы
|
|||
|---|---|---|---|
|
#18+
ГлазуновКуда смотреть в исходниках? Начиная с TCustomIniPropStorage = class(TFormPropertyStorage) и выше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.03.2018, 08:45 |
|
||
|
Как работает сохранение параметров, вводимых пользователем в форме при закрытии этой формы
|
|||
|---|---|---|---|
|
#18+
Глазунов, IniPropStorage1 какого класса? Не TIniPropStorageManEh? Есть экземпляр TPropStorageEh? Если есть, то вот у него есть свойство StoredProps. Его и нужно смотреть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.03.2018, 08:48 |
|
||
|
Как работает сохранение параметров, вводимых пользователем в форме при закрытии этой формы
|
|||
|---|---|---|---|
|
#18+
goldmi45Не TIniPropStorageManEh? Нет. Стандартный для лазаруса. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.03.2018, 08:49 |
|
||
|
Как работает сохранение параметров, вводимых пользователем в форме при закрытии этой формы
|
|||
|---|---|---|---|
|
#18+
Описание формы в коде: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.03.2018, 09:11 |
|
||
|
Как работает сохранение параметров, вводимых пользователем в форме при закрытии этой формы
|
|||
|---|---|---|---|
|
#18+
Глазунов, Ищи соотв. настройки в свойствах этого самого PropStorage, а ещё попробуй даблкликнуть по нему. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.03.2018, 09:45 |
|
||
|
Как работает сохранение параметров, вводимых пользователем в форме при закрытии этой формы
|
|||
|---|---|---|---|
|
#18+
Так и не нашел где же настраивается автосохранение значений переменных формы. Добавил в свойство StoredValues объекта формы IniPropStorage1 нужное мне для сохранение имя и в методах формы FormClose и FormActivate дописал код по сохранению и восстановлению. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.03.2018, 09:47 |
|
||
|
Как работает сохранение параметров, вводимых пользователем в форме при закрытии этой формы
|
|||
|---|---|---|---|
|
#18+
ГлазуновТак и не нашел где же настраивается автосохранение значений переменных формы. Какой именно компонент не сохраняет автоматом данные? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.03.2018, 10:02 |
|
||
|
Как работает сохранение параметров, вводимых пользователем в форме при закрытии этой формы
|
|||
|---|---|---|---|
|
#18+
wadman, CheckBox2: TCheckBox; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.03.2018, 10:04 |
|
||
|
Как работает сохранение параметров, вводимых пользователем в форме при закрытии этой формы
|
|||
|---|---|---|---|
|
#18+
ГлазуновCheckBox2: TCheckBox; Там их два. Первый сохраняет? Выше в сохраненных параметрах его тоже нет... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.03.2018, 10:12 |
|
||
|
Как работает сохранение параметров, вводимых пользователем в форме при закрытии этой формы
|
|||
|---|---|---|---|
|
#18+
wadman, И первый не сохраняет. Но CheckBox1 меня особо не интересует, т.к. им не пользуются. А вот 8 других сохраняются. И только 2 из 8, те что даты, были прописаны в коде закрытия и активации формы. Т.е. 6 переменных сохраняются автоматом без кодинга. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.03.2018, 10:19 |
|
||
|
Как работает сохранение параметров, вводимых пользователем в форме при закрытии этой формы
|
|||
|---|---|---|---|
|
#18+
Глазунов, вспомнил... Выбери форму, открой в инспекторе SessionProperties. Там выбери, что нужно сохранять. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.03.2018, 10:23 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=39621751&tid=2041079]: |
0ms |
get settings: |
10ms |
get forum list: |
22ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
185ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
65ms |
get tp. blocked users: |
2ms |
| others: | 239ms |
| total: | 544ms |

| 0 / 0 |
