Форум: "Начинающим";
Текущий архив: 2011.04.24;
Скачать: [xml.tar.bz2];
Внизкак обеспечить доступ к данным между родительскими формами Найти похожие ветки
← →
Евгений07 (2011-01-19 11:49) [0]Доброго времени!
Дано: несколько программ из нескольких форм со схожими логикой и интерфейсом.
Выделил обобщенные части в отдельные формы, интерфейс программ в дочерних формах.
Проблема: общие родительские формы внутри связаны данными.
Пример
unit Unit10; // родитель 1
TForm10 = class(TForm)
Public
М10, М11: данные;
var
Form10: TForm10;
Implementation
Использую данные М20, М21 из Unit20 так: Form21. М10, Form21. М11 (через дочку)
unit Unit20; // родитель 2
TForm20 = class(TForm)
Public
М20, М21: данные;
var
Form20: TForm20;
Implementation
Использую данные М10, М11 из Unit10 так: Form11. М10, Form11. М11(через дочку)
unit Unit11; // интерфейс 1
TForm11 = class(TForm10)
var
Form11: TForm11;
unit Unit21; // интерфейс 2
TForm21 = class(TForm20)
var
Form21: TForm21;
Как разделить общие формы unit Unit10 и unit Unit20?:
1. Добавить М10, М11, М20, М21 к глобальным переменным (много массивов ~10кб)
2. Для разных прог сделать модули с одинаковыми именами форм Form11, Form21
3. Есть какой-то хитрый способ доступ к родителю, например, из Unit20 так: Form20. М10, Form20. М11 (через родителя)
← →
Jeer © (2011-01-19 12:11) [1]Сделать еще один уровень наследования форм.
В моей практике встречаются случаи до семи уровней, больше вроде не делал.
← →
Jeer © (2011-01-19 12:13) [2]P.S.
Ну и вообще-то никто не мешает развести данные и формы.
← →
Евгений07 (2011-01-19 12:56) [3]
> Сделать еще один уровень наследования форм.
Разделению это не поможет
> Ну и вообще-то никто не мешает развести данные и формы
Это муторно, и проблемы не снимает = данные тоже наследуются
← →
Jeer © (2011-01-19 12:59) [4]Загнать себя в угол, если захотеть, можно всегда (С)
← →
MsGuns © (2011-01-19 16:11) [5]Модуль данных
← →
Евгений07 (2011-01-19 16:26) [6]
> Модуль данных
= 1. Добавить М10, М11, М20, М21 к глобальным переменным (много массивов ~10кб)
← →
Jeer © (2011-01-19 16:46) [7]
> (много массивов ~10кб)
Нам Вас не понять.
← →
Евгений07 (2011-01-19 17:02) [8]
> Нам Вас не понять.
Хотелось бы локализовать данные
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2011.04.24;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.004 c