gpt4 book ai didi

java - 如何指定希望工具栏中的元素居中?

转载 作者:行者123 更新时间:2023-12-01 11:56:55 24 4
gpt4 key购买 nike

出于某种原因,JavaFX 的 ToolBar 仅提供两个项目对齐选项:LEFT_TO_RIGHTRIGHT_TO_LEFT

有趣的是,如果这是RIGHT_TO_LEFT,您必须以相反顺序指定您的项目,以便它们自然显示......

但是,我没有看到任何在中心对齐元素的选项。你如何实现这一目标?或者我必须使用工具栏以外的其他东西吗?

<小时/>

编辑:这是当前的代码...不幸的是这不起作用:(

FXML:

<BorderPane xmlns="http://javafx.com/javafx/8" xmlns:fx="http://javafx.com/fxml/1"
fx:controller="com.github.fge.grappa.debugger.csvtrace.tabs.linechart.LineChartTabDisplay">
<top>
<ToolBar fx:id="toolbar">
<HBox fx:id="hbox" alignment="CENTER">
<Region fx:id="leftSpacer"/>
<Button text="Refresh"/>
<ProgressBar visible="false"/>
<Label text="Layout testing"/>
<Region fx:id="rightSpacer"/>
</HBox>
</ToolBar>
</top>
</BorderPane>

类(class):

public class LineChartTabDisplay
extends JavafxDisplay<LineChartTabPresenter>
{

public Region leftSpacer;
public Region rightSpacer;
public ToolBar toolbar;
public HBox hbox;

@Override
public void init()
{
HBox.setHgrow(leftSpacer, Priority.SOMETIMES);
leftSpacer.setMinWidth(Region.USE_PREF_SIZE);
HBox.setHgrow(rightSpacer, Priority.SOMETIMES);
rightSpacer.setMinWidth(Region.USE_PREF_SIZE);
}
}

但这就是它给出的:

enter image description here

最佳答案

找到了。

事实上,代码非常“简单”。有点,因为对于初学者来说,这确实应该位于工具栏中,但这里是......

FXML 现在如下:

<BorderPane xmlns="http://javafx.com/javafx/8" xmlns:fx="http://javafx.com/fxml/1"
fx:controller="com.github.fge.grappa.debugger.csvtrace.tabs.linechart.LineChartTabDisplay">
<top>
<ToolBar fx:id="toolbar">
<HBox fx:id="hbox" alignment="CENTER" spacing="5.0">
<Button text="Refresh"/>
<Label text="Layout testing"/>
</HBox>
</ToolBar>
</top>
</BorderPane>

代码很简单:

public class LineChartTabDisplay
extends JavafxDisplay<LineChartTabPresenter>
{
@FXML
protected ToolBar toolbar;

@FXML
protected HBox hbox;

@Override
public void init()
{
hbox.minWidthProperty().bind(toolbar.widthProperty());
}
}

关于java - 如何指定希望工具栏中的元素居中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28383821/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com