更新到jre 8u66后,JavaFX场景样式表停止工作

时间:2015-11-13 12:58:03

标签: java javafx-8

我有一个swing应用程序,它的面板包含几个带有自定义样式的JavaFX AreaCharts(使用javafx.embed.swing.JFXPanel)。我们使用了jre 8u20和jre 8u25并且一切正常,现在我必须更新到jre 8u66并且自定义样式不再工作了。

自定义样式表使用绝对文件路径添加到场景中:

scene.getStylesheets().add("file:///F:/_workspace1.8/conf/module/performance/styleServiceGeneral.css");

自定义css文件(第6-13行删除的样式与第4行和第5行的样式相同):

@CHARSET "ISO-8859-1";
.default-color0.chart-area-symbol{
    -fx-background-color: rgba(255, 255, 0, 0.3), rgba(255, 255, 0, 0);
}
.series0.chart-series-area-line{
    -fx-stroke: rgba(255, 255, 255, 0);
}
.series0.chart-series-area-fill{
    -fx-fill: rgba(255, 255, 0, 0.2);
}
.default-color1.chart-area-symbol{
    -fx-background-color: rgba(255, 255, 0, 0.3), rgba(255, 255, 0, 0);
}
.series1.chart-series-area-line{
    -fx-stroke: rgba(255, 255, 255, 0);
}
.series1.chart-series-area-fill{
    -fx-fill: rgba(255, 255, 0, 0.2);
}

.default-color2.chart-area-symbol{
    -fx-background-color: rgba(255, 0, 0, 0.3), rgba(255, 0, 0, 0);
}
.series2.chart-series-area-line{
    -fx-stroke: rgba(255, 255, 255, 0);
}
.series2.chart-series-area-fill{
    -fx-fill: rgba(255, 0, 0, 0.2);
}
.default-color3.chart-area-symbol{
    -fx-background-color: rgba(255, 0, 0, 0.3), rgba(255, 0, 0, 0);
}
.series3.chart-series-area-line{
    -fx-stroke: rgba(255, 255, 255, 0);
}
.series3.chart-series-area-fill{
    -fx-fill: rgba(255, 0, 0, 0.2);
}
/* black */
.chart-area-symbol.series4 {
    -fx-background-color: rgba(0, 0, 0, 1), rgba(255, 255, 255, 1);
}
.chart-series-area-line.series4 {
    -fx-stroke: rgba(0, 0, 0, 1);
}
.chart-series-area-fill.series4 {
    -fx-fill: rgba(0, 255, 0, 0);
}
/* green */
.chart-area-symbol.series5 {
    -fx-background-color: rgba(51, 255, 0, 1), rgba(255, 255, 255, 1);
}
.chart-series-area-line.series5 {
    -fx-stroke: rgba(51, 255, 0, 1);
}
.chart-series-area-fill.series5 {
    -fx-fill: rgba(51, 255, 0, 0);
}

.tooltip {
    -fx-background-color: #FFC800;
    -fx-text-stroke: #000000;
    -fx-text-fill: #000000;
}

1 个答案:

答案 0 :(得分:0)

这是由于CSS中的这一行:

@CHARSET "ISO-8859-1";

它不再需要了。