И я только что проверил реализацию этого, и если узел является нулевым, то метод просто вернет ^^

ытался отобразить всплывающую подсказку для каждого «среза» PieChart, подобного этому в chart.js:

я нашелэтот ответ в основном пытается добиться того же в тех же рамках. Судя по другим (принятым) ответам, он имеет два отрицательных голоса и, похоже, работает на других типах диаграмм. Тем не менее, код не будет работать для меня в том смысле, что там не было всплывающей подсказки.

Пример кода, показывающий проблему:

import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.chart.PieChart;
import javafx.scene.control.Button;
import javafx.scene.control.Tooltip;
import javafx.scene.layout.BorderPane;
import javafx.stage.Stage;

import java.util.List;
import java.util.Random;
import java.util.stream.Collectors;


public class Main extends Application {

    @Override
    public void start(Stage primaryStage) {
        BorderPane pane = new BorderPane();

        PieChart chart = new PieChart();

        Button randomValues = new Button();
        randomValues.setOnAction(ae -> {
            chart.getData().clear();
            List<PieChart.Data> data = randomValues().stream().map(i -> new PieChart.Data("Test" + i % 10, i)).collect(Collectors.toList());
            data.forEach(d -> {
                Tooltip tip = new Tooltip();
                tip.setText(d.getPieValue() + "");
                Tooltip.install(d.getNode(), tip);
            });
            chart.getData().addAll(data);
        });

        pane.setCenter(chart);
        pane.setBottom(randomValues);
        primaryStage.setScene(new Scene(pane));
        primaryStage.show();
    }

    private List<Integer> randomValues() {
        return new Random().ints(5).boxed().collect(Collectors.toList());
    }

    public static void main(String[] args) {
        launch(args);
    }
}

Я ожидал всплывающее окно, похожее на картинку, но буквально ничего не появляется. Любая помощь высоко ценится!

Ответы на вопрос(1)

Ваш ответ на вопрос