[英]How to get rid of extra-space (padding) between piechart and its border in JavaFX / TornadoFX?
我有一个没有名称、标签、图例的简单饼图。 我只需要一个圆圈本身。 但我无法摆脱边界和内容之间的填充。 我已经尝试了所有这些但没有收到任何结果(TornadoFX CSS):
diagram {
padding = box(0.px)
labelPadding = box(0.px)
borderImageInsets += box(0.px)
borderInsets += box(0.px)
backgroundInsets += box(0.px)
maxWidth = 25.px
maxHeight = 25.px
labelLineLength = 0.px
borderColor += box(Color.GREEN)
}
我想摆脱圆形和绿色边框之间的多余空间。 有人知道 Java / CSS / TornadoFX 解决方案/选项吗?
您可以使用负值,例如填充。 请看一下这个小例子(JavaFX):
package sample;
import javafx.application.Application;
import javafx.collections.FXCollections;
import javafx.collections.ObservableList;
import javafx.scene.Scene;
import javafx.scene.chart.PieChart;
import javafx.scene.layout.VBox;
import javafx.stage.Stage;
public class Main extends Application {
@Override
public void start(Stage stage) {
VBox vBox = new VBox();
ObservableList<PieChart.Data> pieChartData =
FXCollections.observableArrayList(
new PieChart.Data("", 75),
new PieChart.Data("", 25));
final PieChart chart = new PieChart(pieChartData);
chart.setLegendVisible(false);
// Negative value for padding:
chart.setStyle("-fx-padding: -35; -fx-border-color: green; -fx-border-width: 3;");
vBox.getChildren().addAll(chart);
stage.setScene(new Scene(vBox));
stage.show();
//chart.setMaxWidth(400d); // careful
}
public static void main(String[] args) {
launch(args);
}
}
您还可以快速设置图表的最大宽度以使绿色框成为正方形,但请注意,它可能会弄乱整体布局:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.