Итак, я работаю над приложением с графическим интерфейсом, используя платформу Swing. Короче говоря, у меня есть 3 JPanels, которые действуют как различные представления моего приложения. Теперь проблема в том, что независимо от порядка добавления JPanels к моему JFrame, только final JPanel, который я добавляю, изменяет размеры, когда я переключаюсь в это представление.
Некоторые соответствующие биты кода:
При создании окна я сначала создаю каждый отдельный JPanel и добавляю его в JFrame:
JPanel newPanel = new SomeClassExtendingJPanel();
this.jframe.add(newPanel);
Далее, всякий раз, когда я переключаюсь между представлениями приложения, я скрываю активную в данный момент панель:
jframe.validate();
jframe.repaint();
oldPanel.setVisible(false);
А затем активируйте отображаемую панель:
jframe.validate();
jframe.repaint();
newPanel.setVisible(true);
Кто-нибудь знает, что может быть не так?