То, что я пытаюсь достичь, это в основном функция «Заключить в» Netbeans во время выполнения:
Допустим, у меня есть эта иерархия компонентов:
Container
Label 1
Label 2
Label 3
И я хочу заключить Label 2
так:
Container
Label 1
Container
Label 2
Label 3
И я также хочу вернуть его, т. Е. Я хочу снова «подтянуть» ярлык, чтобы получить исходную иерархию.
РЕДАКТИРОВАТЬ: Проблема в том, что во время выполнения я знаю только Label 2
. Любые другие компоненты (братья и сестры, родители, дети) неизвестны. Это исключает возможность просто восстановить иерархию.
Конечно, я уверен, что могу найти какой-то способ получить эту функциональность путем обхода иерархий компонентов, но мне интересно:
Есть ли лучший способ? Возможно, какой-то служебный класс, обеспечивающий эту функцию инкапсуляции?
РЕДАКТИРОВАТЬ 2: Как получить ограничения макета, которые компонент был первоначально добавлен в контейнер? Мне нужна эта информация, потому что новый контейнер должен использовать те же ограничения. Также при восстановлении исходной иерархии компонент должен повторно использовать свои старые ограничения.