Java 如何删除切片之间的白色边框?
是否可以删除JavaFX中Java 如何删除切片之间的白色边框?,java,css,javafx,charts,styles,Java,Css,Javafx,Charts,Styles,是否可以删除JavaFX中PieChart切片之间的白色边框? 我无法用以下方式实现它: .chart-pie { -fx-border-width: 0px; } 似乎PieChart有一个插图,我是通过以下方法实现的: .chart-pie { -fx-background-insets: 0; -fx-border-width: 0; } 它并不完美,但对我来说还不够。默认情况下,零件之间存在间隙,不幸的是,我还没有找到如何更改其宽度。但是,您可以使用零件的
PieChart
切片之间的白色边框?
我无法用以下方式实现它:
.chart-pie {
-fx-border-width: 0px;
}
似乎
PieChart
有一个插图,我是通过以下方法实现的:
.chart-pie {
-fx-background-insets: 0;
-fx-border-width: 0;
}
它并不完美,但对我来说还不够。默认情况下,零件之间存在间隙,不幸的是,我还没有找到如何更改其宽度。但是,您可以使用零件的颜色(
-fx border color:deriver(-fx pie color,0%)
)创建边框来填充零件周围的空白(-fx border width:1px
)。创建这个样式表文件
.chart-pie {
-fx-border-color: derive(-fx-pie-color, 0%);
-fx-border-width: 1px;
}
将其包含在场景中
Scene scene = new Scene(new Group());
scene.getStylesheets().add("style.css");
结果显示在下图中。可以随意调整值以获得最佳结果
编辑:我发现控制由逗号分隔的值之间的大小,如文档所示:
一系列大小值或四个大小值的集合,用逗号分隔。单个大小值表示所有插图都相同。否则,每个插图的四个值按顶部、右侧、底部和左侧的顺序给出。序列中的每个逗号分隔值或值集应用于相应的背景色
因此,下面的样式应该会给出非常相同的结果:
.chart-pie {
-fx-background-insets: 0;
-fx-border-width: 0;
}
编辑2:似乎@TheZopo的速度快了一点。请分享你的代码。我想已经有人回答了。试试这个:可能是重复的我想这是一个稍微不同的问题,因为删除白线(即边框)您必须跟踪饼图切片x-1的颜色,并用上一个切片的颜色填充每个边框实例,否?这不是重复的,因为预期结果不是分离零件的彩色边框,而是它们之间的间隙宽度。