Вот что я пробовал:
Перетащил несколько панелей JPanel на JFrame (используя окно инспектора NetBeans).
В конструкторе JFrame сделал невидимыми все панели JPanel с помощью .setVisible(false)
, кроме той, которую я хочу показать первой.
Это работает, и я могу легко переходить от одного к другому, используя некоторые кнопки с actionPerformed и добавляя .setVisible(false)
к текущей карточке и .setVisible(true)
к той, которую я хочу видеть.
Что я хотел сделать сейчас, так это использовать CardLayout previous()
и next()
, аналогично браузеру назад/вперед. Я также хотел бы получить доступ к панели из разных мест, то есть две панели могут ссылаться на одну и ту же, поэтому предыдущая панель не всегда будет одинаковой.
Я попытался использовать следующий код в actionPerformed внутри класса JFrame:
CardLayout cardLayout = (CardLayout) this.getLayout();
cardLayout.previous(this);
Однако это не работает. Что мне не хватает? Это должно делать то, что я ищу?