为什么我必须像下面的示例一样为每个圈子声明类?

样式表:

.circle {
    -fx-fill: #fff;
}


码:

Circle c = new Circle(50,50,25);
c.getStyleClass().add("circle");


我观看了一些有关如何在JavaFX中使用样式表的视频。在视频中,他们根本不必声明类,样式表也可以正常工作。但是,当我尝试使用样式表时,必须为创建的每个圆圈声明类,以便应用样式。

那可能是设置问题吗?

我的IDE是NetBeans,他们也在视频中使用它。

最佳答案

documentation列出了分配给每种节点类型的默认样式类。

如您所见,Circle没有默认样式类。 (基本上,默认样式类仅分配给控件,而不分配给形状等。)您提到的视频可能使用的是分配了默认样式类的节点类型。

您可以考虑使用Type Selector,即

Circle {
    -fx-fill: #fff
}


相反,如果您不想显式设置样式类。

09-07 19:10
查看更多