如何使用BorderLayout将两个组件放到JPanel中?

Gil*_*lad 9 java swing jpanel border-layout

基本上我要做的是在JPanel的右侧添加两张图片,并排放在JPanel的中心,JLabel放在JPanel的右边,所以我被告知要将JPanel的布局设置为BorderLayout并且使用BorderLayout.CENTER添加图片,使用BorderLayout.EAST添加JLabel.

JPanel panel = new JPanel();
panel.SetLayout(new BorderLayout(100,100));

panel.add(pic1,BorderLayout.CENTER);
panel.add(pic2,BorderLayout.CENTER);
panel.add(new JLabel("Example"), BorderLayout.EAST);
Run Code Online (Sandbox Code Playgroud)

实际上,结果是图片在JPanel的左边相同,而JLabel在JPanel的右边.

非常感谢您的帮助!

Kak*_*kia 22

您需要做的是有另一个JPanel,您可以在其中向西方添加一张图片,向东方添加一张图片.然后将JPanel添加到您的中心panel.例如

JPanel p = new JPanel(new BorderLayout());

p.add(pic1,BorderLayout.WEST);
p.add(pic2,BorderLayout.EAST);

panel.add(p,BorderLayout.CENTER);
Run Code Online (Sandbox Code Playgroud)