如何在javafx中更改菜单控件的颜色?

时间:2016-01-25 21:12:18

标签: javafx javafx-2 javafx-8

在另一个问题中,我发现这可能与css

有关
.menu .label
{
    -fx-text-fill: black;
}

但它不适用于setStyle方法 menu.setStyle("-fx-text-fill: black");

1 个答案:

答案 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);