gpt4 book ai didi

java - 如何防止javafx中SrollPane自动滚动

转载 作者:行者123 更新时间:2023-12-02 11:45:37 28 4
gpt4 key购买 nike

我正在开发一个 javafx 项目,该项目在 ScrollPane 中有一个 VBox。问题是,当 vBox 的高度减小时,scrollPane 自动向上滚动。我怎样才能防止这种情况发生?知道高度增加时它不会滚动!

注意:在垂直框内,我有一些按钮可以添加/删除一些文本字段,从而导致垂直框高度的增加/减少。

由于工作规定,我无法显示整个代码,但这里是我在 ScrollPane 中定义和添加 VBox 的位置:

    VBox mainVBox = new VBox();
mainVBox.setStyle("-fx-background-color: #0292b7");
mainVBox.setPrefWidth(400);
mainVBox.setSpacing(10);
mainVBox.setPadding(new Insets(3,5,3,5));
ScrollPane scrollPane = new ScrollPane();
scrollPane.setContent(mainVBox);
scrollPane.setPrefWidth(420);
scrollPane.setPrefHeight(600);
VBox.setVgrow(scrollPane,Priority.ALWAYS);

最佳答案

此行为的原因是您删除了当前具有焦点的元素。这导致焦点转移到容器中的第一个元素,并且 ScrollPane 自动滚动到该元素。

要更改此设置,您可以在删除 Button 或/和 TextField 之前在代码中添加例如 mainVBox.requestFocus();

关于java - 如何防止javafx中SrollPane自动滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48222199/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com