JavaFX:在 ButtonBar 内对齐按钮(使用 SceneBuilder 或 fxml)

标签 java javafx javafx-8 fxml scenebuilder

我有一个 JavaFX ButtonBar带有两个按钮(通过 SceneBuilder 创建)。

我希望其中一个按钮左对齐,另一个按钮右对齐。 (见截图)

enter image description here

从文档中我已经知道如何在 java 源代码中实现这一点:

ButtonBar.setButtonData(newButton, ButtonData.LEFT);

但是

我想知道如何实现这一点而不必将其写入我的 java 文件中,但是
我如何仅使用 SceneBuilder 或相应的 fxml 文件实现这一点

我的 .fxml 文件目前看起来像这样:

<ButtonBar>
  <buttons>
    <Button text="New" />
    <Button text="Save" />
  </buttons>
</ButtonBar>

* 我在 Windows 上
** This answer这不是我想要的,因为他使用的是 ToolBar,但我想知道如何使用 ButtonBar 执行此操作(并且他的方法不适用于 ButtonBar)

最佳答案

经过反复试验,我至少找到了一种通过 .fxml 文件直接执行此操作的方法:

您可以为 Button 元素分配 ButtonBar.buttonData 属性,然后为它们分配一个值。

<ButtonBar>
  <buttons>
    <Button text="New" ButtonBar.buttonData="LEFT" />
    <Button text="Save" ButtonBar.buttonData="RIGHT" />
  </buttons>
</ButtonBar>

ButtonBar.ButtonData enum 的文档非常简单。所以我用“LEFT”和“RIGHT”枚举值找到了我的问题的解决方案。

仍然

如果有人知道/找到如何直接在 SceneBuilder 中执行此操作,我将不胜感激!

关于JavaFX:在 ButtonBar 内对齐按钮(使用 SceneBuilder 或 fxml),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32426848/

相关文章:

JavaFX TableView - 无法显示行

Java - 任务和 future - 我需要捕获异常还是可以将它们留给应用程序线程?

java - 使用 JavaFX 8 创建 null-safe BooleanBinding

java - 如何随着窗口大小的调整而调整 JLabel 中图像的大小?如何保持适当的规模?

java - 需要按 'R' 、 'B' 、 'W' 的顺序对任意长度的字符数组进行排序

java - 启动 DLL 进程不工作

java - 重用文件输入流

java - 使用 javaFX 连接点

java - 如何修复嵌入字体 (Java) 的 FileNotFoundException?

Java - 检查部分对象相等性