在另一个问题中,我发现这可能与css
有关.menu .label
{
-fx-text-fill: black;
}
但它不适用于setStyle
方法
menu.setStyle("-fx-text-fill: black");
答案 0 :(得分:1)
CSS将样式应用于菜单下方的每个标签。
menu.setStyle(...)
仅适用于菜单本身。菜单本身没有-fx-text-fill
属性。
如果您将CSS更改为:
.menu
{
-fx-text-fill: blue;
}
然后它将与您的代码相同...并停止以彩色显示菜单。
菜单不支持像这样设置字体颜色。 CSS解决方案依赖于实现细节。
如果您不想这样做,您必须使用menu.setGraphic(...)
来设置节点,例如:
Menu menuFile = new Menu("");
Label t = new Label("File");
t.setStyle("-fx-text-fill: blue;");
menuFile.setGraphic(t);