我一直在尝试让VBox可滚动,但似乎什么都不起作用。有没有人可以帮助我,给我提个建议,告诉我我可能做错了什么?提前感谢大家。
这就是我所拥有的,但我似乎就是不能让它工作:
@Component
@Scope(proxyMode = ScopedProxyMode.TARGET_CLASS, value = "prototype")
public class Scroller {
final ScrollBar sc = new ScrollBar();
DropShadow shadow = new DropShadow();
public Group scrollableGroup(VBox Container) {
Group root = new Group();
root.getChildren().addAll(Container, sc);
shadow.setColor(Color.GREY);
shadow.setOffsetX(2);
shadow.setOffsetY(2);
sc.setLayoutX(500 + sc.getWidth() + 10);
sc.setMin(0);
sc.setOrientation(Orientation.VERTICAL);
sc.setPrefHeight(500);
sc.setMax(500 * 2);
sc.valueProperty().addListener(new ChangeListener<Number>() {
public void changed(ObservableValue<? extends Number> ov,
Number old_val, Number new_val) {
Container.setLayoutY(-new_val.doubleValue());
}
});
return root;
}
}发布于 2015-05-31 23:42:02
AlmasB和James_D是对的--最简单的方法就是将VBox放在ScrollPane中。如果您这样做只是为了好玩,那么Oracle的ScrollBar教程将指导您如何使VBox可滚动。
http://docs.oracle.com/javafx/2/ui_controls/scrollbar.htm
https://stackoverflow.com/questions/30490406
复制相似问题