作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
所以我希望按钮 Select
位于按钮 Back
之上,我不希望它们相互重叠。但是当我将它们都设置为 PAGE_END
时,它们会重叠。我该如何解决这个问题?
这是问题的代码:
public void methodName() {
JPanel controls = new JPanel(new BorderLayout(5,5));
final CardLayout cl = new CardLayout();
final JPanel panel = new JPanel(cl);
controls.add(panel);
this.getContentPane().setLayout(new FlowLayout(FlowLayout.LEADING));
list = new JList<Object>(objectName);
list.setVisibleRowCount(7);
select = new JButton("Select");
back = new JButton("Back");
select.addActionListener(this);
controls.add(new JScrollPane(list));
controls.add(select, BorderLayout.PAGE_END);
controls.add(back, BorderLayout.PAGE_END);
controls.setBorder(new EmptyBorder(25,25,0,0));
add(controls);
refreshFrame();
}
这是同时添加但重叠时的样子:
这是我想要的样子:
有什么想法吗?
提前致谢!
最佳答案
像这样使用 GridLayout
将 2 个 JButtons
放在新的 JPanel
上
JPanel basePanel = new JPanel(new GridLayout(0, 1, 0, 3));
basePanel.add(select);
basePanel.add(back);
controls.add(basePanel, BorderLayout.PAGE_END);
GridLayout
可以在其 constructor 中提供按钮之间的垂直间隙如您的问题所示
关于java - 如何使用 BorderLayout 将两个 JButton 定位在 PAGE_END 而不会重叠?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18036727/
我从这个网站得到了一个不同的答案,那个人遇到了同样的问题,但我的按钮仍然没有固定到底部。有任何想法吗 ? import java.awt.Dimension; import java.awt.Grid
所以我希望按钮 Select 位于按钮 Back 之上,我不希望它们相互重叠。但是当我将它们都设置为 PAGE_END 时,它们会重叠。我该如何解决这个问题? 这是问题的代码: public void
我试图将 Jslider 和 Jlabel 添加到 PAGE_END 并排,我可以将它们中的每一个都添加到它们的 on 上,但是将 .add("components name".PAGE_END) 添
我是一名优秀的程序员,十分优秀!