(Java) Явное / программное закрытие JPanel

Скажем, у меня есть класс, расширяющий JPanel:

class StockScreenResultsPanel extends JPanel{
    etc...
}

Затем у меня есть дескриптор этого класса, который я только что получил из родительской вкладки:

StockScreenResultsPanel childComponent = (StockScreenResultsPanel)nasdaqTab.getComponent(); 

Мне очень жаль, если это действительно глупо, но я хочу явно закрыть childComponent (не просто скрыть его, а исключить из приложения), и я не могу найти никаких примеров.

Может ли кто-нибудь показать мне, как явно / программно закрыть дочерний JPanel?

Я уже пробовал приведенный ниже код и получил сообщение об ошибке "StockScreenResultsPanel не может быть преобразован в окно"

childComponent.dispatchEvent(new WindowEvent( (Window)childComponent , WindowEvent.WINDOW_CLOSING));

Кроме того, если я попробую:

childComponent.dispose() 

Это дает мне «не могу найти символ».

Вы пробовали просто удалить его с JTabbedPane? Поскольку JPanel - это просто компонент, он не закрывается, как окно.

MadProgrammer 30.08.2018 06:57

Вы не можете закрыть панель. Следовательно, ни одно из ваших решений не сработало (панель не является окном, и она не одноразовая, так как это просто JComponent. Попробуйте удаление для самой вкладки.

Moira 30.08.2018 07:02
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
2
27
1

Ответы 1

Как говорится в комментариях в ответ на мой вопрос выше, вы не можете закрыть панель, вместо этого вы должны использовать remove.

Другие вопросы по теме