Через одно место делаешь....
Обычно я делаю так.
Есть базовый фрейм с объявленным интерфейсом (TBaseFrame).
Есть его потомки с перекрытими методами.
Есть фабрика фреймов, которая по некоторому ключу создает фрейм нужного класса, но возвращет его как TBaseFrame.
В месте, где используются фреймы, заводится переменная типа TBaseFrame. В нее заносится указатель на созданный фрейм и работа идет с ней (все методы доступны, бо как все-таки она, пременная, типизированная). Когда нужно, вызываешь деструктор для этой переменной и, соответсвенно, создаешь новый фрейм в нее же. Это если у тебя одновременно 1 фрейм на форме. Если несколько - то под каждую надо заводить свою переменную.
|