如何设置所需的位置scrollpane?

时间:2012-12-23 00:07:44

标签: java javafx-2 javafx

Method sp.setVvalue(app.spvalue.intValue());不会将vbox滚动到所需位置。

            mvPane = new VBox();
            mvPane.setStyle("-fx-background-color: #fff;");
            GetPlayList(app,root);

            sp = new ScrollPane();
            sp.setVbarPolicy(ScrollPane.ScrollBarPolicy.AS_NEEDED);
            sp.setContent(mvPane);
            sp.setVvalue(40);
            setCenter(sp);
            sp.getVvalue();

函数GetPlayList添加了许多标签。

3 个答案:

答案 0 :(得分:3)

如果你在谈论JavaFX 2.0及其scrollPane,那么Hvalue和Vvalue属性运行良好,但问题是,它们的值是从范围[0.0 .. 1.0]加倍,所以,当你设置int值,它将无法正常工作。

答案 1 :(得分:0)

这可能是您的问题 - 我注意到如果您在执行yourScrollPane.setVvalue()之前尝试执行yourStage.show(),则不会滚动。但是,如果在已经显示阶段之后执行sp.setVvalue() ,它将起作用。不确定这是否是ScrollPane中的错误或预期的行为。希望有所帮助。

答案 2 :(得分:0)

在这种情况下,问题肯定是数字40,因为只允许0到1之间的值。然而,由于不同的原因而遇到同样的问题,却偶然发现了这个问题。 发现setHvalue()和setVvalue仅在JFX线程(也称为Platform.runlater)上执行是很重要的。否则,在启动用户驱动的滚动事件之前,位置不会明显更新!