Java 在 JPanel 的中心对齐 JLabel

标签 java swing jpanel jlabel layout-manager

我的应用程序顶部有一个栏,在 JLabel 的两侧有许多按钮。按钮的可见性取决于用户正在执行的当前任务,并且按钮的文本之一也可能会根据当前状态发生变化。

我想要做的是将一些按钮固定在 JPanel 的左侧,JLabel 的中心位于 JPanel 的正中央,其余按钮位于 JPanel 的右侧。

到目前为止,我已经设法使用各种方法和布局管理器将按钮固定在左侧和右侧,但我无法使 JLabel 的中心位于 JPanel 的中心。我设法得到的最好的是标签离中心足够近,但随着按钮设置为可见或它们的文本发生变化,它会四处移动。

是否可以强制 JLabel 保持死点?

注意:按钮永远不会变大到足以与 JLabel 的任一边缘相交,所以这不是问题。

最佳答案

您还可以使用 BoxLayoutX_AXIS 布局,并添加到容器中

编辑:这是一个例子

panel.setLayout(new BoxLayout(panel, BoxLayout.X_AXIS));
panel.add(Box.createHorizontalGlue());
panel.add(innerPanel);
panel.add(Box.createHorizontalGlue());

关于Java 在 JPanel 的中心对齐 JLabel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5345609/

相关文章:

java - 扩展 IntentService 类

java - 如何在vaadin中获取元素ID

java - mongodb - 如何使用 java 驱动程序构建多运算符更新语句?

java - 将 JRadioButton 添加到 RadioButton 组

java - 在 JPanel 中执行 ActionListener

java - 主动 JDBC 按字母顺序保存数据

java - 如何获取主键来执行select语句

java - 如何有效地将组件添加到带有背景图像的 Swing 面板?

java - 将 JPanel 构造函数添加到 JPanel 显示灰色

java - 将 JButton 从不同的类添加到 JPanel