最后我发现了一些要问的问题。 我正在研究带有动画的小型JavaFX项目。然后有一个Slider设置Transitions的持续时间。 如何在动画开始前锁定Slider?
我在SequentialTransition收到java.lang.NullPointerException,因为当Slider值改变时我停止动画。所以一开始它会尝试停止null Transition:
void stopAnimation(){
seqT.stop();
}
一切正常,除非有人在动画开始前移动滑块:)。 我试图在构造函数中禁用滑块,并在启动动画的EventHandler中启用它,但它不起作用:
slider = SliderBuilder.create()
.disable(true)
然后
.onAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent event) {
if(!"Stop".equals(startBtn.getText())){
startBtn.setText("Stop");
slider.disableProperty().setValue(Boolean.TRUE);
startAnimation(60/slider.valueProperty().doubleValue());
}
else {
startBtn.setText("Start");
stopAnimation();
}
}
})
答案 0 :(得分:0)
要启用滑块,您需要使用
slider.setDisable(false);