我目前已经创建了 GridLayout:
它有 4 列,前两列是进度条,另外两个是开始/停止按钮。
如何让最后两个按钮彼此相邻?
我多么想要它:
进度条
进度条
开始停止
情况如何:
进度条
进度条
开始
停止
即使我将布局更改为: panel.setLayout(new GridLayout(3, 2, 3, 3)); 它不起作用,任何人都可以帮助我吗?
最佳答案
只需将两个 JProgressBar
放入带有 JPanel say centerPanel
的 BridLayout(0, 1, 5, 5)
即可。
然后将 2 JButton
s START and STOP
放到另一个 JPanel say buttonPanel
与布局即 FlowLayout(FlowLayout.LEFT, 5, 5)
(这将使 JButton
START 与 JProgressBar
s 的左侧对齐,但如果你想要JButton
s 出现在相同的中间位置,那么就不要使用 。setLayout(FlowLayout.LEFT, 5, 5)
JPanel
的默认布局就可以了)。
现在使用
将centerPanel
添加到 JFrame
frameReference.add(centerPanel, BorderLayout.CENTER)
并使用
添加buttonPanel
frameReference.add(buttonPanel, BorderLayout.PAGE_END)
这样就可以了:-)
编辑 1:
为这个东西使用 Border
。喜欢
centerPanel.setBorder(BorderFactory.createLineBorder(Color.BLACK))
这将在 Box
周围创建一个 centerPanel
。请看一下这个 answer ,尽管我在此示例中使用的是 TitledBorder
。
关于java - JPanel - 网格布局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18560852/