现在的问题是先添加的JLabel在上面,后添加的在下面。
4 个解决方案
#1
CardLayout layout = new CardLayout();
JPanel panel = new JPanel(layout);
panel.add(jlabel1,"first");
panel.add(jlabel2,"second");
layout.show(panel,"second");
JPanel panel = new JPanel(layout);
panel.add(jlabel1,"first");
panel.add(jlabel2,"second");
layout.show(panel,"second");
#2
顶楼上
#3
我为了可以随意设置JLable的位置,将JPanel的Layout设为null了,不知道你的方法可以不?
#4
可以把设置成FlowLayout布局等都可以的,因为窗体默认的布局是BorderLayout布局,而放进去的组件默认
区中,所以你加上去的时候就覆盖了。其实你也可以把JLabel指定放到哪个位置也不会覆盖的。
#1
CardLayout layout = new CardLayout();
JPanel panel = new JPanel(layout);
panel.add(jlabel1,"first");
panel.add(jlabel2,"second");
layout.show(panel,"second");
JPanel panel = new JPanel(layout);
panel.add(jlabel1,"first");
panel.add(jlabel2,"second");
layout.show(panel,"second");
#2
顶楼上
#3
我为了可以随意设置JLable的位置,将JPanel的Layout设为null了,不知道你的方法可以不?
#4
可以把设置成FlowLayout布局等都可以的,因为窗体默认的布局是BorderLayout布局,而放进去的组件默认
区中,所以你加上去的时候就覆盖了。其实你也可以把JLabel指定放到哪个位置也不会覆盖的。