Java 同时移动2个滚动条

Java 同时移动2个滚动条,java,scroll,javafx,scrollbar,javafx-8,Java,Scroll,Javafx,Scrollbar,Javafx 8,在我的JavaFX项目中,我在splitpane中有一个2个TextFlows,包装在2个滚动窗格中。如何同时滚动两个滚动窗格。 或者简单地将滚动条绑定到其他滚动条 我可以通过将事件侦听器添加到每个滚动窗格的vvaluepropert来解决这个问题。我把答案贴在这里。所以如果有人需要,希望这会有所帮助 scrolPane1.vvalueProperty().addListener(new ChangeListener<Number>() { @Override

在我的
JavaFX
项目中,我在
splitpane
中有一个2个
TextFlows
,包装在2个滚动窗格中。如何同时滚动两个滚动窗格。 或者简单地将滚动条绑定到其他滚动条


我可以通过将事件侦听器添加到每个滚动窗格的vvaluepropert来解决这个问题。我把答案贴在这里。所以如果有人需要,希望这会有所帮助

scrolPane1.vvalueProperty().addListener(new ChangeListener<Number>() {
      @Override
      public void changed(ObservableValue<? extends Number> observable, Number oldValue, Number newValue) {
             if((Double)newValue < scrolPane2.getVmax())
                   scrolPane2.setVvalue((Double)newValue);
      }
});

scrolPane2.vvalueProperty().addListener(new ChangeListener<Number>() {
      @Override
      public void changed(ObservableValue<? extends Number> observable, Number oldValue, Number newValue) {
             if((Double)newValue < scrolPane1.getVmax())
                  scrolPane1.setVvalue((Double)newValue);
      }
});
scrolPane1.vvalueProperty().addListener(新的ChangeListener()){
@凌驾

public void已更改(observeValue这也将解决您的问题:

scrolPane1.vvalueProperty().bindBiderectional(scrolPane2.vvalueProperty());

就这样!:)

hmm..你为什么不简单地等待绑定这两个值呢?