我有左边和中间部分的 BorderPane,两者都是 ScrollPanes。如何使用一个滚动条(垂直)滚动它们。或者如何访问其中一个 ScrollBars ?
问问题
3041 次
2 回答
5
@invariant 的答案对我不起作用。但是下面写的代码成功了。
ScrollPane sp1 = new ScrollPane();
ScrollPane sp2 = new ScrollPane();
sp1.hvalueProperty().bindBidirectional(sp2.hvalueProperty());
将两个组件相互绑定后,它们会一起水平滚动。它适用于垂直案例。
于 2016-02-29T10:02:45.663 回答
3
您可以绑定 scrollpane1(sp1) vScrollBar 属性并将更改的值设置为其他滚动窗格 vScrollbar 属性。
示例代码:此代码在 Sp1 vScrollbar 位置更改时自动更改 SP2 vScrollbar 位置。
DoubleProperty vPosition = new SimpleDoubleProperty();
vPosition.bind(sp1.vvalueProperty());
vPosition.addListener(new ChangeListener() {
@Override
public void changed(ObservableValue arg0, Object arg1, Object arg2) {
sp2.setVvalue((double) arg2);
}
});
提示让一个滚动条滚动两个滚动窗格:定义一个垂直滚动条,然后隐藏(可能将 opcaity 设置为零或其他什么..)两个滚动窗格的 vscrollbars。然后绑定到定义的滚动条更改,并将更改后的值设置为两个滚动窗格 vscrollbars,就像上面一样。
于 2013-02-15T15:51:28.750 回答