我正在尝试研究如何使用CardLayout,但我一直得到“CardLayout错误的父级”错误等等。我之前从未使用过CardLayout,而且我似乎无法在网上找到很多东西。我只需要能够在框架上的两个面板之间切换。谢谢你的帮助。这是我目前的代码:
Frame f = new Frame();
CardLayout cardL = new CardLayout();
JPanel cards = new JPanel(cardL);
f.add(cards);
StartPanel sp = new StartPanel();
OtherPanel op = new OtherPanel();
cards.add(sp, "Start");
cards.add(op, "Other");
cardL.show(sp, "Start");
f.setVisible(true);
答案 0 :(得分:2)
更改
cardL.show(sp, "Start");
到
cardL.show(cards, "Start");
正如CardLayout API将告诉您的那样,show(...)
方法的第一个参数应该是对使用CardLayout的容器的引用。
此外: