1

在创建 JavaFX 应用程序并在 FXML 文件中启用助记符解析时,您应该能够在javafx.scene.control.Menu的标签字符串中使用“_”字符来允许解析为 Alt 代码(在 Windows 上)。这可行,但在显示舞台时,菜单的宽度似乎有一个额外的空间,正如2014 年的这个错误报告中所证实的那样。

我的问题如下:有人知道解决此问题的任何解决方法吗?想过计算文本本身的大小,然后手动设置Menu的宽度,但是JavaFX的Menu似乎没有setWidth()、widthProperty()或其他手动设置大小的方法。

我也想过在菜单中使文本居中,但找不到任何方法通过 Java 代码、Scene Builder 或 JavaFX 的 CSS 来实现。

这是该问题的屏幕截图:

在此处输入图像描述

编辑:

经过一番使用,我发现您可以在 CSS 中执行以下操作:

.menu-bar .menu .label {
    -fx-alignment: center;
}

这会将 JavaFX 菜单的标签对齐到居中,但额外的空间仍然存在。它足以满足我的强迫症,但还有更好的方法来处理这个问题吗?

4

0 回答 0