![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как управлять различными настройками программы?
Kolan © (2005-12-07 12:01:00)Здравствуйте,
Никак не доделаю возможность настраивать программу. В проекте куча настроек(должно быть). Для работы с ними сделал менеджера и по классу для каждой настраиваемой области. Напирер:
TSettingsManager = class
private
FTree: TTreeView;
FPageControl: TPageControl;
FPageLabel: TLabel;
FMeasurmentDirectory: string;
FRangesDirectory: string;
FDevice: PDeviceData;
FMeasurment: TMeasurment;
FChart: TChartSettings;
Те класс TChartSettings отвечает за настройки Chart'а.
TChartSettings = class
private
FXAx: TAxiexType;
FYAx: TAxiexType;
FChartImagesDirectory: string;
protected
public
constructor Create;
destructor Destroy; override;
published
property XAx: TAxiexType read FXAx;
property YAx: TAxiexType read FYAx;
property ChartImagesDirectory: string read FChartImagesDirectory write
FChartImagesDirectory;
end;
Итд. Плюс менеджер управляет отображением этих настроек...
Как вы решаете подобные проблеммы? Есть ли стандартные решения?
Kolan (2005-12-08 13:21:00) [1]да по-разному ... единой концепции нет ... где-то удобней сосредоточить эту логику в некоем объекте, где-то удобней воспользоваться простыми существующими подручными инструментами ..
Понял. Буду поступть подобным образом... :)
Благодарю за ответ. :)
Digitman (2005-12-08 13:16:00) [2]
> Как вы решаете задачу сохранения/загрузки и доступа к настройкам
> программы
да по-разному ... единой концепции нет ... где-то удобней сосредоточить эту логику в некоем объекте, где-то удобней воспользоваться простыми существующими подручными инструментами ..
> И есть ли обше растпространенные подходы к решению этой
> ЗАДАЧИ
наверно, есть ... но при том уровне абстракции в изложении тобой задачи вряд ли что-то можно подсказать конкретное ..
> я понял что то , что я придумал не полный бред
ну , положим, в сосредоточении тобой логики автоматического упр-я сохранением/восстановлением параметров в рамках спец.класса ничего "бредоносного" действительно нет - в ряде задач это имеет и повод и смысл .... но опять же - конкретнопоставленной задачи для конкретныхусловий ..
Kolan (2005-12-08 13:06:00) [3]Defunct © (08.12.05 09:35) [5]
Ну почти мой метод...
Digitman © (07.12.05 13:59) [1]
Перефразирую. Как вы решаете задачу сохранения/загрузки и доступа к настройкам программы. И есть ли обше растпространенные подходы к решению этой ЗАДАЧИ.
PS В принципе я понял что то , что я придумал не полный бред... :)
Всех благодарю...
Defunct (2005-12-08 09:35:00) [4]> Kolan © (07.12.05 12:01)
Не знаю насколько подход правильный, я поступаю так:
написал шаблон класса конфигурации программы, который может сохранять настройки либо в реестр либо в ini-файл, а далее вставляю его в конкретный проект и добавляю в него требуемые свойства. При инициализации модуля создается экземпляр TConfiguration, в него считываются последние сохраненные настройки, если при считывании происходит исключение, тогда поля заполняются значения по умолчанию и конфигурация сохраняется.
Ну а потом во всех требуемых настройки модулях обращаюсь к этому экземпляру конфигурации.
Васяня (2005-12-08 05:24:00) [5]
> vertal ©
Ну так пользуйся этим компонентом и все ;) тем более он с исходниками, бери да пользуйся...
vertal (2005-12-08 01:37:00) [6]Как вариант -
http://kladovka.net.ru/index.cgi?pid=list&rid=233
Sapersky (2005-12-07 14:46:00) [7]Толком не понял, что подразумевается под управлением, но если сохранение/загрузка свойств, то можно использовать TStream.WriteComponent/ReadComponent. Если сначала сохранить в MemoryStream и сделать ObjectBinaryToText - запишет в понятном человеку виде (фактически dfm).
Digitman (2005-12-07 13:59:00) [8]
> Как вы решаете подобные проблем мы?
в чем, собственно, проблемы состоят ? из вопроса не понятно ...
> Как управлять
что значит "как" ? а классы эти самые ты для чего объявил ? наверно, для того чтобы обращаться к св-вам и вызывать методы соответствующих объектов ? или для пущей красоты ?