Как удалить текущую карту, на которой находится пользователь. Я знаю, как пройти макет карты, используя следующую и предыдущую функцию, но как удалить текущий кадр, на котором находится пользователь? Например, если у меня есть программа, в которой я нахожусь на 3-й панели из 5 панелей, как удалить текущую, которая является 3-й панелью. Как только вы удалите его, следующий или предыдущий заменит его. Я не думаю, что removecurrentlayout может использоваться, потому что я не удаляю компонент. Например, в коде, как мне удалить карту 3, если я на ней.
import java.awt.BorderLayout;
import java.awt.CardLayout;
import java.awt.Container;
import java.awt.Dimension;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class CardLayoutProg {
public static void main(String[] args) {
JFrame frame = new JFrame("CardLayout");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Container contentPane = frame.getContentPane();
JPanel buttonPanel = new JPanel();
JButton nextButton = new JButton("Next");
buttonPanel.add(nextButton);
contentPane.add(buttonPanel, BorderLayout.SOUTH);
final JPanel cardPanel = new JPanel();
final CardLayout cardLayout = new CardLayout();
cardPanel.setLayout(cardLayout);
for (int i = 1; i <= 5; i++) {
JButton card = new JButton("Card " + i);
card.setPreferredSize(new Dimension(200, 200));
String cardName = "card" + 123123;
cardPanel.add(card, cardName);
}
contentPane.add(cardPanel, BorderLayout.CENTER);
nextButton.addActionListener(e -> cardLayout.next(cardPanel));
frame.pack();
frame.setVisible(true);
}
}