【问题标题】:How to set the desired position scrollpane?如何设置所需的位置滚动窗格?
【发布时间】:2012-12-10 01:37:23
【问题描述】:

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添加许多标签。

【问题讨论】:

  • 考虑选择项目,然后按照此处的建议进行操作:stackoverflow.com/questions/1543705/…>
  • 谢谢,但是不知道怎么考虑选项?
  • 我猜你是在提到 JavaFX 滚动窗格控件,所以删除了“jscrollpane”标签。 app.spvalue 指的是什么?你是如何设置这个变量的?提供更多细节。

标签: java javafx-2 javafx


【解决方案1】:

如果您谈论的是 JavaFX 2.0 及其 scrollPane,那么 Hvalue 和 Vvalue 属性运行良好,但是看起来它们的值是 [0.0 .. 1.0] 范围内的两倍,所以,当您设置int 值,它不会正常工作。

【讨论】:

    【解决方案2】:

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

    【讨论】:

      【解决方案3】:

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2013-07-15
        • 1970-01-01
        • 2013-07-16
        • 2010-10-24
        • 2014-05-11
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多