如何使JavaFX ScrollPane自动滚动到底部?

Lak*_*ana 1 java javafx scrollpane

我有一个Scrollpane足够大的内容来激活垂直滚动条. fx:idScrollpanemyScrollPane.我也有一个buttonScroll To The Bottom.我已经设定Action EventScroll To The Bottom button,如下面的fxml控制器.

@FXML
private voide myButtonOnAction(ActionEvent evt) {
    myScrollPane.setVvalue(1.0);
}
Run Code Online (Sandbox Code Playgroud)

然而,这非常快速地滚动到底部.不能告诉它是否也滚动了.我想知道一种制作Scrollpane卷轴的方法.

VGR*_*VGR 7

除非您准备在调用Platform.runLater时将每个更新包装到滚动条值,否则不要使用Timer .

正确的方法是使用时间轴动画:

static void slowScrollToBottom(ScrollPane scrollPane) {
    Animation animation = new Timeline(
        new KeyFrame(Duration.seconds(2),
            new KeyValue(scrollPane.vvalueProperty(), 1)));
    animation.play();
}
Run Code Online (Sandbox Code Playgroud)