Форум: "Основная";
Текущий архив: 2003.02.03;
Скачать: [xml.tar.bz2];
ВнизКак организовать хранение присваиваемых методов? Найти похожие ветки
← →
Aleksandr (2003-01-24 16:17) [0]Суть задачи такова: у меня есть объект, который хранит в файле, создает и инициализирует колонки для DBGrid и поля для DataSet. Объект универсальный, то есть он не зависит от конкретных особенностей привязанных к нему гриды и датасета. В программе существует несколько датасетов, у каждого есть OnCalcFields, и у многих полей есть OnGetText. При этом в разных формах один и тот же датасет может быть одинаковым - например, в одной форме он является главным, а в другой - подчиненным к главному. Соответственно, получается, что в каждом модуле, где используются одинаковые датасеты, нужно дублировать код на OnCalcFields и на OnGetText. Как можно сделать так, чтобы при первом создании объект, управляющий информацией о датасетах, запоминал их свойства OnCalcFields и OnGetText, и в последующем при загрузке из файла сам находил и присваивал нужный метод для конкретного датасета и конкретных полей?
← →
Романов Р.В. (2003-01-24 16:34) [1]Что то не понял для чего это. Может попробовать по имениполя или таблицы присвавать методы.
← →
Aleksandr (2003-01-24 16:52) [2]Ну, для того, чтобы универсальный объект, хранящий информацию, без какой-то жесткой привязки мог хранить и пересоздавать гриду и датасет. Например, у меня есть базовая форма, у которой при создании грузится такой объект. Он создает запрос, колонки у дбгрид, при этом все, что он имеет - это имя файла с информацией. У потомков этой формы уже есть различия - у каждого на калькуляцию датасета есть свой метод. Но в том-то и дело, что у нескольких потомков с довольно разными свойствами на датасете может быть как одинаковый OnCalcFields, так и разный.
А как по имени таблицы присваивать? Есть, допустим, глобальные процедуры OnCalcFields1, OnCalcFields2 и OnCalcFields3. В базовом классе формы объект-хранитель должен из файла прочесть, какую из них присвоить датасету. А как это сделать? Что-то наподобие как у списков есть универсальный Sort, в котором вызывается имя функции сортировки, только въехать я в него не могу...
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2003.02.03;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.009 c