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

时间:2015-09-06 18:26:31

标签: java javafx javafx-8 fxml scenebuilder

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

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

enter image description here

从文档中我已经知道如何在java-source-code中实现这一点:

ButtonBar.setButtonData(newButton, ButtonData.LEFT);

BUT

我想知道如何实现这一点而不必在我的java文件中写这个但是如何使用SceneBuilder或相应的fxml文件来实现这一点。

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

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

*我在Windows上
** This answer不是我想要的,因为他正在使用ToolBar,但我想知道如何使用ButtonBar(并且他的方法对ButtonBar不起作用)

3 个答案:

答案 0 :(得分:17)

经过一些试验和错误后,我发现至少有一种方法可以通过.fxml文件直接进行:

您可以为Button元素指定ButtonBar.buttonData属性,然后为它们指定值。

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

ButtonBar.ButtonData enum的文档非常简单。所以我找到了我的问题的解决方案&#34; LEFT&#34;和#34;右边&#34;枚举值。

STILL

如果有人知道/在SceneBuilder中直接找到如何做到这一点,我将不胜感激!

答案 1 :(得分:0)

有&#34; 转换&#34; Scene Builder右侧按钮的布局选项卡中的属性。更改&#34; 翻译X &#34;。 (按钮的位置将水平变化。) &#34; 翻译Y &#34;将垂直改变按钮的位置。 您需要先计算位置。

我刚发现它。

答案 2 :(得分:-1)

enter image description here

通过检查器,通常在NetBeans的右侧,您会找到选项卡“布局”。 打开它并滚动到“ Transform”部分。

“ Translate X”选项用于调整x轴按钮栏中的按钮。