2016-05-13 3 views
0

Я разместил содержимое внутри вкладки TabPane, но ширина TabPane кажется мне равной самому длинному элементу внутри вкладки (самый длинный элемент не отображается на изображении).Заполнение пространства JavaFX ScrollPane или TabView

TabPane загружается в ScrollPane через FXMLLoader.load(), поэтому я ожидал бы, чтобы заполнить все пространство, а не только размер самого длинного элемента внутри ..

enter image description here

Как я могу заставить TabPane заполнить все свободное пространство?

погрузчик:

 FXMLLoader loader = new FXMLLoader(); 
     loader.setLocation(Main.class.getResource("View.fxml")); 
     Node tp = loader.load(); 
     ScrollPane sp = new ScrollPane(); 
     sp.setContent(tp); 
     primaryStage.setScene(new Scene(sp, 300, 200)); 
     primaryStage.show(); 

View.fxml:

<TabPane tabClosingPolicy="UNAVAILABLE" xmlns="http://javafx.com/javafx/8.0.65" xmlns:fx="http://javafx.com/fxml/1"> 
    <tabs> 
    <Tab text="Untitled Tab 1"> 
     <content> 
     <AnchorPane /> 
     </content> 
    </Tab> 
    <Tab text="Untitled Tab 2"> 
     <content> 
     <AnchorPane /> 
     </content> 
    </Tab> 
    </tabs> 
</TabPane> 

ответ

2
ScrollPane sp = new ScrollPane(); 
sp.setContent(tp); 
sp.setFitWidth(true); 
+0

Спасибо! Правильное имя метода - sp.setFitToWidth (true); если кто-то еще ищет решение ... – user1802693