0
A
回答
2
您可以使用綁定基於滾動條位置來調整這個特殊對象的位置,看下代碼:
public class FancyScrollPane extends Application {
@Override
public void start(Stage primaryStage) {
ScrollPane scrollPane = new ScrollPane();
Pane content = new Pane();
scrollPane.setContent(content);
// adding background
content.getChildren().add(new Rectangle(500, 500, Color.GREEN));
Circle immovableObject = new Circle(30, Color.RED);
content.getChildren().add(immovableObject);
primaryStage.setScene(new Scene(scrollPane, 300, 300));
primaryStage.show();
// here we bind circle Y position
immovableObject.layoutYProperty().bind(
// to vertical scroll shift (which ranges from 0 to 1)
scrollPane.vvalueProperty()
// multiplied by (scrollableAreaHeight - visibleViewportHeight)
.multiply(
content.heightProperty()
.subtract(
new ScrollPaneViewPortHeightBinding(scrollPane))));
}
// we need this class because Bounds object doesn't support binding
private static class ScrollPaneViewPortHeightBinding extends DoubleBinding {
private final ScrollPane root;
public ScrollPaneViewPortHeightBinding(ScrollPane root) {
this.root = root;
super.bind(root.viewportBoundsProperty());
}
@Override
protected double computeValue() {
return root.getViewportBounds().getHeight();
}
}
public static void main(String[] args) { launch(); }
}
相關問題
- 1. 如何在滾動時始終可見節點?
- 2. 滾動條始終在CollapsiblePanelExtender中可見
- 3. 滾動時始終可見div
- 4. 使滾動視圖始終可見?
- 5. 導航箭頭始終可見滾動
- 6. 始終可見的水平滾動條
- 7. webkit2png.py - 滾動條始終可見
- 8. 使主滾動條始終可見
- 9. 垂直嵌套滾動始終可見
- 10. 在Winform Framework 2.0中的ListView和DataGridView中始終可見的滾動條
- 11. 獲取Java FX中錨點窗格內顯示的子節點?
- 12. 在網站上滾動時窗口始終可見?
- 13. 使主滾動條始終可見 - 無需滾動
- 14. 使滾動條始終在div中可見 - 鉻合
- 15. 如何使滾動條在QML中的Flckable上始終可見
- 16. 始終使滾動條在UIScrollview中可見
- 17. 如何使jScrollPane自定義滾動條始終可見?
- 18. 我可以移動滾動條並使其始終可見嗎?
- 19. 不可見TextView的開始在滾動時可見ListView
- 20. 使滾動條在UIScrollView上始終可見?
- 21. 可滾動表保持標題始終可見
- 22. 移動列表視圖過濾器在滾動時始終可見
- 23. 始終可見qml
- 24. DataGrid - 如何使兩個滾動條始終可見?
- 25. Highcharts - Y軸始終可見(即使水平滾動後)
- 26. 天冬氨酸面板垂直滾動條始終可見
- 27. 如何讓listview的滾動條始終可見
- 28. 爲什麼垂直滾動條始終可見
- 29. 無法讓微調器的滾動條始終可見(Android)
- 30. 如何使div滾動條始終可見?