0
私は選択したパイチャートスライスのパーセンテージを表示しようとしています。私はGoogleで検索し、誰もがマウスイベントで新しいイベントハンドラを追加しています。コードを実装しようとすると、次のエラーが発生します。javafx piechartでイベントハンドラーを追加できません
私は間違っていますか?私はエラーでGoogleを検索しようとしましたが、何も来ていません。
当該コントローラ:
package com.hva.fastenyourseatbelt;
import java.awt.event.MouseEvent;
import java.net.URL;
import java.util.List;
import java.util.ResourceBundle;
import javafx.collections.FXCollections;
import javafx.collections.ObservableList;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.fxml.FXML;
import javafx.fxml.Initializable;
import javafx.scene.Parent;
import javafx.scene.chart.PieChart;
import javafx.scene.control.ComboBox;
import javafx.scene.control.Label;
import javafx.scene.paint.Color;
import utilities.DatabaseUtils;
import static utilities.StatisticsUtils.giveAirports;
/**
* FXML Controller class
*
* @author Mourad A
*/
public class FXMLStatistiekenController implements Initializable {
/**
* Initializes the controller class.
*/
@FXML
private ComboBox<String> CBStatisticsCountry;
@FXML
private ComboBox<String> CBStatisticsAirport;
@FXML
private ComboBox<String> CBStatistiekenYear;
@FXML
private ComboBox<String> CBStatistiekenMonth;
@FXML
private PieChart pieChart;
@Override
public void initialize(URL url, ResourceBundle rb) {
ObservableList list = DatabaseUtils.getType();
pieChart.setData(list);
pieChart.setTitle("Type bagage");
final Label caption = new Label("");
caption.setTextFill(Color.DARKORANGE);
caption.setStyle("-fx-font: 24 arial;");
for (final PieChart.Data data : pieChart.getData()) {
data.getNode().addEventHandler(MouseEvent.MOUSE_PRESSED,
new EventHandler<MouseEvent>() {
@Override
public void handle(MouseEvent e) {
caption.setTranslateX(e.getSceneX());
caption.setTranslateY(e.getSceneY());
caption.setText(String.valueOf(data.getPieValue()) + "%");
}
});
}
}
@FXML
private String receiveCountries(ActionEvent event) {
String country = CBStatisticsCountry.getValue();
return country;
}
}
おかげ
編集:追加全体コントローラ
完全なファイルを含めてください。最も可能性の高い説明は、JavaFXの代わりに 'MouseEvent'のAWTまたはSwingバージョンをインポートしたことです。 – Itai
@sillyfly投稿を編集しました – Bas
@sillyfly javafxの亜種をインポートに置き換えました。お手伝いありがとう。私はそれを受け入れることができるようにこれを回答として投稿できますか? – Bas