如何阻止ScrollPane面板JavaFX

时间:2016-12-12 11:29:26

标签: javafx resizable scrollpane

我有一个小问题。我正在使用JavaFX构建一个接口: interface JavaFX 我想知道,我怎么能阻止我在图像中指出的ScrollPane的那些“线”?实际上它不是可调整大小的,但在其属性中,ScrollPane不允许我对该属性进行检查:

Properties

我该怎么做才能解决? 感谢所有提前!

1 个答案:

答案 0 :(得分:1)

我认为您的问题是您没有为ScrollPanes添加最小值,例如:

    SplitPane split = new SplitPane();
    split.setPrefSize(400, 400); 

    //First ScrollPane
    ScrollPane spA = new ScrollPane();
    spA.setMinWidth(100);  //Block the scrollPane width to 100
    spA.setFitToHeight(true);
    spA.setFitToWidth(true); 
    Pane paneA = new Pane();
    paneA.setStyle("-fx-background-color:red;");
    spA.setContent(paneA);

    //Second ScrollPane
    ScrollPane spB = new ScrollPane();
    spB.setMinWidth(100); //Block the scrollPane width to 100
    spB.setFitToHeight(true);
    spB.setFitToWidth(true); 
    Pane paneB = new Pane();
    paneB.setStyle("-fx-background-color:blue;");
    spB.setContent(paneB);

    split.getItems().addAll(spA,spB);

为了能够在增长时使用scrollPane,您可以使用绑定并将ScrollPane的内容(宽度/高度属性)绑定到其父级(ScrollPane)示例:

//set the (FitToHeight/FitToWidth) properties to false before !
spA.widthProperty().addListener(new ChangeListener<Number>() {

        @Override
        public void changed(ObservableValue<? extends Number> observable, Number oldValue, Number newValue) {

            paneB.setMinWidth((double)newValue);
        }
    });
祝你好运!