У нас есть большое приложение VCL с базой данных с базой данных, которое состоит из более чем 300 различных форм. Мы хотели бы предоставить базу данных практики (манекена) вместе с нашим программным обеспечением, которое устанавливается вместе с их производственной базой данных - с возможностью переключения между ними (для обучения/практики и т. Д.).Как я могу добавить границу для каждой формы в моем приложении без изменения кода каждой формы?
Проблема в том, что, когда пользователи используют режим практики, мы должны сделать что-то очень ясное, чтобы выделиться среди них, чтобы они знали, что они работают в режиме практики. Наиболее идеальным решением было бы поставить красную границу вокруг внутреннего края каждой отдельной формы. Но существует так много форм, что я не хочу изменять каждый из них.
Как добавить такой кадр (внутри границы Windows, а не снаружи) вдоль края каждой формы приложения из одного глобального места?
Я не могу использовать стили VCL, иначе я бы реализовал его оттуда. Я ищу что-то на глобальном уровне, который может перебирать каждую форму и рисовать эту границу. Но это также означает ловить сообщения об изменении размера каждой формы и перерисовывать эту границу.
Самый простой способ, который я вижу, - создать базовую форму, которая имеет эту функциональность, и наследовать каждую форму через систему из этой базовой формы. Но это все равно означает, что каждая форма основывается на этом. У нас были другие проблемы в прошлом, модифицирующие базовые формы существующих форм (другой предмет), поэтому я хотел бы избежать этого решения, если есть еще одно более легкое решение.
Ваши формы не основаны на собственном базовом классе? – bummi
Если бы я разрабатывал эту систему с нуля, я бы определенно сделал базовую форму. Проблема в том, что программное обеспечение около 20 лет и огромно. Много разных форм уже наследуют много раз. –
Итак, вставьте базовую форму. Что тебя останавливает? –