cardLayout如何切换JPanel
时间: 2023-02-20 21:03:27 浏览: 64
CardLayout 是 Java Swing 布局管理器中的一种,可以实现在同一个容器中切换不同的 JPanel 面板。使用 CardLayout 可以按照卡片的形式管理多个 JPanel,在需要的时候显示某个 JPanel,而隐藏其它 JPanel。
下面是一个示例代码:
```
import java.awt.*;
import javax.swing.*;
public class CardLayoutExample {
public static void main(String[] args) {
JFrame frame = new JFrame("CardLayout Example");
Container content = frame.getContentPane();
CardLayout layout = new CardLayout();
content.setLayout(layout);
JPanel panel1 = new JPanel();
panel1.add(new JButton("Button 1"));
content.add(panel1, "Panel 1");
JPanel panel2 = new JPanel();
panel2.add(new JButton("Button 2"));
content.add(panel2, "Panel 2");
frame.setSize(300, 100);
frame.setVisible(true);
layout.show(content, "Panel 2");
}
}
```
上面的代码中,我们创建了一个 JFrame,并将其内容面板的布局设置为 CardLayout。然后我们创建了两个 JPanel,分别加入了一个按钮。最后,我们调用 layout.show(content, "Panel 2") 方法来显示第二个 JPanel。
你可以使用 layout.next(content) 和 layout.previous(content) 方法在多个 JPanel 间切换。也可以使用 layout.show(content, "Panel 1") 这样的语句显示指定的 JPanel。