2016-12-12 33 views
0

У меня небольшая проблема. Я создаю интерфейс с JavaFX следующим образом: interface JavaFX Интересно, как я могу заблокировать эти «линии» ScrollPane I, указанные на изображении? Практически не быть изменяемыми, но среди его свойств ScrollPane не позволяет мне поставить чек на это имущество:Как заблокировать панель ScrollPane JavaFX

Properties

Как я могу сделать, чтобы решить? спасибо всем заранее!

+0

Это не SplitPane? –

+0

Да, извините. Все находится в SplitPane, и внутри есть 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 к своим родителям (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); 
     } 
    }); 

удачи!

+0

Отлично! Большое спасибо! –