【问题标题】:How to block a ScrollPane panel JavaFX如何阻止 ScrollPane 面板 JavaFX
【发布时间】:2017-04-27 06:15:09
【问题描述】:

我有一个小问题。我正在用 JavaFX 构建一个接口,如下所示: 我想知道,我该怎么做才能阻止我在图像中指示的 ScrollPane 的那些“线”?实际上,它不能调整大小,但在其属性中,ScrollPane 不允许我检查该属性:

我该如何解决? 提前感谢大家!

【问题讨论】:

  • 这不是 SplitPane 吗?
  • 是的,对不起。一切都在 SplitPane 中,里面有 ScrollPane。

标签: javafx resizable scrollpane


【解决方案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) 示例:

//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);
        }
    });

祝你好运!

【讨论】:

  • 完美!非常感谢!
猜你喜欢
  • 1970-01-01
  • 2010-09-30
  • 2014-04-21
  • 2023-03-12
  • 2017-08-07
  • 1970-01-01
  • 1970-01-01
  • 2017-03-08
  • 2014-11-26
相关资源
最近更新 更多