java - JPanel - 网格布局

标签 java swing jframe jpanel

我目前已经创建了 GridLayout: 它有 4 列,前两列是进度条,另外两个是开始/停止按钮。 如何让最后两个按钮彼此相邻?

我多么想要它:
进度条
进度条
开始停止

情况如何:
进度条
进度条
开始
停止

即使我将布局更改为: panel.setLayout(new GridLayout(3, 2, 3, 3)); 它不起作用,任何人都可以帮助我吗?

最佳答案

只需将两个 JProgressBar 放入带有 JPanel say centerPanelBridLayout(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/

相关文章:

java - 如何替换maven项目中的传递依赖库

java - 交换两个整数的函数

java - 如何让 toString() 返回多行字符串?

java - JXTable + GlazedLists + 在拖动选择期间更新 = 问题

java - 使用 JTextArea 按数轴插入文本

java - 初始化变量的正确方法

java - JLabel图像图标: stop auto centering in the frame

java - 如果按下按钮,则重新启动我的 GUI

java - 内部 JFrame

Java JPanel 不可见