【发布时间】:2020-06-10 19:29:28
【问题描述】:
我正在尝试将带有 BoxLayout 的 JPanel 的内容垂直居中。 BoxLayout 与 Y 轴对齐,因此里面的项目是水平对齐的。
例如,我现在拥有的:
-----------------------------
| ------ |
| ---------- |
| ---- |
| -------------- |
| |
| |
| |
| |
| |
| |
-----------------------------
我想要什么:
-----------------------------
| |
| |
| |
| ------ |
| ---------- |
| ---- |
| -------------- |
| |
| |
| |
-----------------------------
目前,我正在使用 setAlignmentX(Component.CENTER_ALIGNMENT) 将元素列居中:
JPanel box = new JPanel();
box.setLayout(new BoxLayout(box, BoxLayout.Y_AXIS));
JLabel one = new JLabel("First element");
one.setAlignmentX(JLabel.CENTER_ALIGNMENT);
box.add(one);
JLabel two = new JLabel("Second element");
two.setAlignmentX(JLabel.CENTER_ALIGNMENT);
box.add(two);
...
如何将其更改为垂直居中?
【问题讨论】:
标签: java swing jpanel layout-manager boxlayout