Hello, i use a ScrollPane with a custom h max value and a custom v max value (to facilitate some calculations).
ScrollPane scroll = new ScrollPane(content); scroll.setHmax(10000); scroll.setVmax(10000); if for some reasons, the content layout bounds changes, the scroll hValue and vValue are set to 1.0. It is due to the boundsChangeListener in the ScrollPaneSkin : private final ChangeListener<Bounds> boundsChangeListener = new ChangeListener<Bounds>() { @Override public void changed(ObservableValue<? extends Bounds> observable, Bounds oldBounds, Bounds newBounds) { ... double newValueY = (oldPositionY/newPositionY)*vsb.getValue(); if (newValueY < 0.0) { vsb.setValue(0.0); } else if (newValueY < 1.0) { vsb.setValue(newValueY); } else if (newValueY > 1.0) { vsb.setValue(1.0); } ... if (newValueX < 0.0) { hsb.setValue(0.0); } else if (newValueX < 1.0) { hsb.setValue(newValueX); } else if (newValueX > 1.0) { hsb.setValue(1.0); } } } }; I think that the fixes values (0.0 and 1.0) should be replaced by (h|v)sb.getMin() or (h|v)sb.getMax(). if (newValueY < vsb.getMin()) { vsb.setValue(vsb.getMin()); } else if (newValueY < vsb.getMax()) { vsb.setValue(newValueY); } else if (newValueY > vsb.getMax()) { vsb.setValue(vsb.getMax()); } Am i right or am i misunderstanding something ? Regards Seb Sébastien BOULET LEAD DÉVELOPPEUR intactile DESIGN Création d’interfaces + subtiles 04 67 52 88 61 09 50 12 05 66 20 rue du carré du roi 34000 MONTPELLIER France www.intactile.com <http://intactile.com/> Les informations contenues dans cet email et ses documents attachés sont confidentielles. Elles sont exclusivement adressées aux destinataires explicitement désignés ci-dessus et ne peuvent être divulguées sans consentement de son auteur. Si vous n'êtes pas le destinataire de cet email vous ne devez pas employer, révéler, distribuer, copier, imprimer ou transmettre le contenu de cet email et devez le détruire immédiatement.