private static void setupUnitIncrement(ScrollBar bar) { bar.unitIncrementProperty().bind(new DoubleBinding() { { bind(bar.maxProperty(), bar.visibleAmountProperty()); } @Override protected double computeValue() { double max = bar.getMax(); double visible = bar.getVisibleAmount(); return max > visible ? 16 / (max - visible) * max : 0; } }); }
private void unbindScrollBar(ScrollBar bar) { bar.maxProperty().unbind(); bar.unitIncrementProperty().unbind(); bar.blockIncrementProperty().unbind(); bar.visibleProperty().unbind(); }
public void bind(ScrollBar bar) { bar.minProperty().bind(this.min); bar.maxProperty().bind(this.max); bar.visibleAmountProperty().bind(this.contentAreaHeight.divide(this.contentHeight.divide(this.max))); bar.valueProperty().bindBidirectional(this.offset); recomputeAll(); }
vScrollBar.setOrientation(Orientation.VERTICAL); vScrollBar.minProperty().bind(scrollPane.vminProperty()); vScrollBar.maxProperty().bind(scrollPane.vmaxProperty()); vScrollBar.visibleAmountProperty().bind(scrollPane.heightProperty().divide(pane.heightProperty())); scrollPane.vvalueProperty().bindBidirectional(vScrollBar.valueProperty()); hScrollBar.setOrientation(Orientation.HORIZONTAL); hScrollBar.minProperty().bind(scrollPane.hminProperty()); hScrollBar.maxProperty().bind(scrollPane.hmaxProperty()); hScrollBar.visibleAmountProperty().bind(scrollPane.widthProperty().divide(pane.heightProperty())); scrollPane.hvalueProperty().bindBidirectional(hScrollBar.valueProperty());
public void bindHorizontalScrollbar(ScrollBar bar) { bar.setMin(0); DoubleBinding max = this.contentBody.widthProperty().subtract(widthProperty()); DoubleBinding factor = this.contentBody.widthProperty().divide(max); bar.maxProperty().bind(this.contentBody.widthProperty().divide(factor)); bar.visibleAmountProperty().bind(widthProperty().divide(factor)); this.offsetX.bind(bar.valueProperty()); }
= scrollBar.maxProperty().subtract(scrollBar.minProperty()).multiply(pos).add(scrollBar.minProperty());
hbar.maxProperty().bind(content.totalWidthEstimateProperty()); vbar.maxProperty().bind(content.totalHeightEstimateProperty());