Страница 1 из 2
RxDBGrid & RxPropertyStorage
Добавлено:
26.03.2017 13:37:17
kit
Медленно сохраняет настройки полей. Как сделать так чтоб StorageProperty бил на главной форме и держал все в памяти до закрития программи?
Re: RxDBGrid & RxPropertyStorage
Добавлено:
26.03.2017 18:05:15
alexs
Наоборот - стораже на каждой форме свой
и у него SeparatedFiles = true
Всё в дело в реализации INI файла. При большом размере он начинает тормозить.
Re: RxDBGrid & RxPropertyStorage
Добавлено:
27.03.2017 08:51:12
kit
А если переделать OnIniSave: сохранять в StoredValues?
Re: RxDBGrid & RxPropertyStorage
Добавлено:
27.03.2017 09:07:52
alexs
StoredValues - это просто дополнительный массив для сохранения произвольных данных. Он точно также сохраняется в ini файл.
Тормоза возникают в тот момент когда много RxPropertyStorage начинают хранить в одном файле (по умолчанию он один на всех). Большие Ini файлы обрабатываются медленно.
Поэтому я и сделал наследника, у которого свойство SeparatedFiles обозначает требование своего файла для каждой формы. RxPropertyStorage, соответственно, должен быть на каждой форме свой.
Re: RxDBGrid & RxPropertyStorage
Добавлено:
28.03.2017 07:33:41
kit
alexs писал(а):StoredValues - это просто дополнительный массив для сохранения произвольных данных.
Ну вот и сохранять в масив а записивать в ini-файл только при виходе из программи
Re: RxDBGrid & RxPropertyStorage
Добавлено:
28.03.2017 09:31:20
Лекс Айрин
kit, а как быть в случае если прогу тупо выгрузят из памяти через диспетчер задач?
Re: RxDBGrid & RxPropertyStorage
Добавлено:
28.03.2017 17:04:03
alexs
kit писал(а):Ну вот и сохранять в масив а записивать в ini-файл только при виходе из программи
А он у тебя что - один? Он должен быть на каждой форме свой.
Re: RxDBGrid & RxPropertyStorage
Добавлено:
29.03.2017 08:49:56
kit
alexs писал(а):kit писал(а):Ну вот и сохранять в масив а записивать в ini-файл только при виходе из программи
А он у тебя что - один? Он должен быть на каждой форме свой.
Для каждой форми свой но только на главной форме.
Добавлено спустя 1 минуту 33 секунды:Лекс Айрин писал(а):kit, а как быть в случае если прогу тупо выгрузят из памяти через диспетчер задач?
Не важно потому как там только настройки грида
Добавлено спустя 1 минуту 13 секунд:Решил проблему сделав форму autocreate
Re: RxDBGrid & RxPropertyStorage
Добавлено:
29.03.2017 09:19:57
alexs
kit писал(а):Для каждой форми свой но только на главной форме
Этот компонент относится к одной форме. И он должен НАХОДИТЬСЯ на этой форме. Не надо всё пихать в одну форму. Тормоза именно из-за этого.
И, кстати, в твоём варианте не будет работать Form.StoredProps.
Re: RxDBGrid & RxPropertyStorage
Добавлено:
29.03.2017 09:50:46
kit
alexs писал(а):Этот компонент относится к одной форме. И он должен НАХОДИТЬСЯ на этой форме. Не надо всё пихать в одну форму. Тормоза именно из-за этого.
И, кстати, в твоём варианте не будет работать Form.StoredProps.
Сейчас на каждой форме свой и тороза из-за того что каждий раз как я закриваю форму, настройки записиваються в ini-файл - задержка.
Re: RxDBGrid & RxPropertyStorage
Добавлено:
29.03.2017 09:59:45
Лекс Айрин
kit, а точно из-за этого? Это ж какого размера должен быть ini файл, чтобы появилась явная задержка, если, зачастую, даже в Мемо (с предварительной загрузкой в StringList, а то и насильственным преобразованием кодировки) она зачастую практически незаметна?
Re: RxDBGrid & RxPropertyStorage
Добавлено:
29.03.2017 11:01:48
alexs
kit писал(а):Сейчас на каждой форме свой и тороза из-за того что каждий раз как я закриваю форму, настройки записиваються в ini-файл - задержка.
Точно признак SeparateFiles включен?
Если да - то это значить что вы сохраняете ОЧЕНЬ большие конфиги.
У меня тормоза стали заметно после того, как ini файл стал превышать 1 мег. Но для сохранялки формы это
не реально большие данные.
Типичный размер такого файл - 5 - 10 килобайт.
В этом случае - тут уже надо наверное самому переписать наследника от TFormPropertyStorage с требуемым вам поведением.
Re: RxDBGrid & RxPropertyStorage
Добавлено:
30.03.2017 08:53:20
kit
Размер файла 1килобайт - задержка 1-2 сек., может и неболшая но в Delphi небило и потому клиенти ворчат.
Re: RxDBGrid & RxPropertyStorage
Добавлено:
30.03.2017 10:00:21
alexs
А точно в этом дело? На таких размерах не должно тормозить. У меня практически на каждой форме этот компонент используется. Парк ПК очень различен (есть одноядерные ПК ещё). Но торможения такого не наблюдал.
Там ещё можно с параметром CacheUpdates поиграться у IniFile.
Я попробую.
Re: RxDBGrid & RxPropertyStorage
Добавлено:
31.03.2017 09:52:43
kit
На форме 7 гридов - может в етом проблема?