Форум: "Основная";
Текущий архив: 2003.11.13;
Скачать: [xml.tar.bz2];
ВнизПомогите советом по ФОРМАМ Найти похожие ветки
← →
UGB (2003-11-04 15:32) [0]Здравствуйте!
Имеются несколько БД(DBF). В главной форме есть DBGRID для каждой из них. Выполняются в общем-то одни и теже операции: добавить, редактировать, удалить, восстановить. Формы ввода из-за разных структур разные (они в отдельных модулях). Если я например сделаю одну форму, но с несколькими панелями для каждой базы и буду их делать видимыми в определенных условиях, то уменьшится ли EXE? Кто имеет опыт ввода в большое число таблиц с неодинаковыми структурами поделитесь, буду ОЧЕНЬ признателен. Спасибо
← →
Amoeba (2003-11-04 15:53) [1]Размер *.exe будет зависеть от общего числа форм в проекте и размещенных на них компонентов + написанный тобой код. Видимость/невидимость взятая отдельно ничего не изменит. То, что ты хочешь сделать, не поможет.
Единственно можно уменьшить объем памяти и ресурсов потребляемых программой, если оставить исходный вариант, но при этом не делать эти формы Autocreate (см. Project|Options).
← →
UGB (2003-11-05 07:15) [2]Если их не сделать автозагружаемыми, но по мере работы все равно нужно зайти в каждое из окно (может быть) и все равно будет размер тоже. Но все равно спасибо. Операторы, как правило, работают с одним окном.
← →
KSergey (2003-11-05 08:00) [3]Операторы не как правило, они по определению могут работать только с одним окном. В винде лишь одно окно может быть активным.
> Если их не сделать автозагружаемыми, но по мере работы все
> равно нужно зайти в каждое из окно (может быть) и все равно
> будет размер тоже
Размер - чего? Exe - да, занимаемой памяти - нет, т.к. после отработки очередную форму уничтожаем - вот и все.
Вообще говоря не совсем понятно о чем вы сейчас заботитесь. Сколько у вас таких форм? две сотни, три тысячи? Уверен, что нет. А для 5-10 форм - не стоит особо заморачиваться про объемы.
Да, делать все их автокрейтными - смысле не имеет, автокрейт - вообще зло, по определению ;)
А так - ну создавайте по необходимости и уничтожайте - вот и все.
Если действия относительно однотипны, как и кнопки (как минимум) на формах - можно сделать для них общего наследника с общей для всех функциональностью (редактирование, добавление, удаление для заданного DataSet (его, воможно, придется задавать как параметр в run-time, красявости design-time уходят - ну да они тоже зло ;). Хотя, смотря как сделать- не обязательно они уходят.)
А уже от этой базовой формы пронаследовать другие, с предметно-зависимой функциональностью.
Размер exe - уменьшится (если я верно понимаю), на счет памяти при выполнении - не уверен, т.к. по сравнению с просто созданием формы увеличится, возможно, таблица виртуальных функций, код для обслуживания потомков и т.д., но это все, по-моему, копейки по сравнению с мировой революцией! ;)
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2003.11.13;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.036 c