![](/img/trans.png)
[英]JavaFX splitpane - Prevent unwanted divider position changes
[英]JavaFX: SplitPane changes divider position on resize if there are items inside
我有以下代码:
public class JavaFxApplication2 extends Application {
@Override
public void start(Stage stage) throws Exception {
SplitPane splitPane=new SplitPane();
VBox vBox1=new VBox();
vBox1.setStyle("-fx-background-color: red");
VBox vBox2=new VBox();
vBox2.setStyle("-fx-background-color: blue");
splitPane.getItems().add(vBox1);
splitPane.getItems().add(vBox2);
splitPane.getDividers().get(0).setPosition(0);
Scene scene=new Scene(splitPane, 200, 400);
stage.setScene(scene);
stage.show();
}
}
这是我运行应用程序时的输出:
现在我调整大小并使舞台更大:
如您所见,分频器位置现在不是0.如何在调整大小时禁用分频器位置更改?
SplitPane
包含的所有节点默认调整大小,因此“漫游分隔符”。
您可以使用setResizableWithParent
来避免调整左侧VBox
大小:
SplitPane.setResizableWithParent(vBox1, false);
在调整SplitPane大小时,将SplitPane中的节点设置为可调整大小。 默认情况下,所有节点都可调整大小 将值设置为false将阻止调整节点大小。
如果您不希望调整正确的VBox
大小,则还必须为该节点调用此方法。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.