非表示のアイテムに派手な JavaFX イベントを追加するにはどうすればよいですか?
たとえば、ボタンのクリックによってトリガーされる非表示のラベルを表示するときに、「フェード」効果を使用したいと思います。
以下のメソッドが呼び出されたときに効果を追加するにはどうすればよいですか?
@FXML
private void handleButtonAction(ActionEvent event) {
label.setVisible(true);
}
FadeTransitionを使用します。
@FXML private Label label;
private FadeTransition fadeIn = new FadeTransition(
Duration.millis(3000)
);
public void initialize() {
fadeIn.setNode(label);
fadeIn.setFromValue(0.0);
fadeIn.setToValue(1.0);
fadeIn.setCycleCount(1);
fadeIn.setAutoReverse(false);
}
@FXML
private void handleButtonAction(ActionEvent event) {
if (!label.isVisible()) {
label.setVisible(true);
fadeIn.playFromStart();
}
}