2013-06-04 4 views
2

У меня есть этот простой пример: ушкиКак установить закладку размер имя в JavaFX

primaryStage.setTitle("Tabs Test"); 
     Group root = new Group(); 
     Scene scene = new Scene(root, 600, 500, Color.WHITE); 

     TabPane tabPane = new TabPane(); 
     BorderPane mainPane = new BorderPane(); 

     //Create Tabs 
     Tab tabA = new Tab(); 
     tabA.setText("Main Component"); 
     tabA.setClosable(false); // da se mahne opciqta da se zatvarq tab 
     //Add something in Tab 
     StackPane tabA_stack = new StackPane(); 
     tabA_stack.setAlignment(Pos.CENTER); 
     tabA_stack.getChildren().add(accordion); // dobavq se tuka accordion 
     tabA.setContent(tabA_stack); 
     tabPane.getTabs().add(tabA); 

     Tab tabB = new Tab(); 
     tabB.setText("Second Component"); 
     tabB.setClosable(false); // da se mahne opciqta da se zatvarq tab 
     //Add something in Tab 
     StackPane tabB_stack = new StackPane(); 
     tabB_stack.setAlignment(Pos.CENTER); 
     tabB_stack.getChildren().add(new Label("[email protected] B")); 
     tabB.setContent(tabB_stack); 
     tabPane.getTabs().add(tabB); 

     Tab tabC = new Tab(); 
     tabC.setText("Last Component"); 
     tabC.setClosable(false); // da se mahne opciqta da se zatvarq tab 
     //Add something in Tab 
     StackPane tabC_vBox = new StackPane(); 
     tabC_vBox.setAlignment(Pos.CENTER); 
     tabC_vBox.getChildren().add(new Label("[email protected] C")); 
     tabC.setContent(tabC_vBox); 
     tabPane.getTabs().add(tabC); 

     mainPane.setCenter(tabPane); 

     mainPane.prefHeightProperty().bind(scene.heightProperty()); 
     mainPane.prefWidthProperty().bind(scene.widthProperty()); 

     root.getChildren().add(mainPane); 
     primaryStage.setScene(scene); 
     primaryStage.show(); 

Можете ли вы сказать мне, как я могу установить размер названия вкладки? Я хочу сделать их маленькими.

ответ

4

Вы можете сделать это с помощью CSS. Создайте файл «myStyle.css» в проекте и переопределить селектор в CSS, используемый по умолчанию вкладки вставив следующие в этот файл CSS:

.tab .tab-label { 
    -fx-skin: "com.sun.javafx.scene.control.skin.LabelSkin"; 
    -fx-background-color: transparent;  
    -fx-alignment: CENTER; 
    -fx-text-fill: -fx-text-base-color; 
    -fx-font-size: 8px; /* all the same except this newly added one */ 
} 

Этот CSS изначально скопирован из caspian.css. Для получения дополнительной настройки используйте -fx-font и/или обратитесь к Справочнику по JavaFX CSS.

Загрузите файл css в сцену.

scene.getStylesheets().add(this.getClass().getResource("myStyle.css").toExternalForm()); 

или в tabPane непосредственно,

tabPane.getStylesheets().add(this.getClass().getResource("myStyle.css").toExternalForm()); 
+0

Можете ли вы показать мне, как я могу импортировать код в мой код? –

+0

@PeterPenzov обновлен. –

 Смежные вопросы

  • Нет связанных вопросов^_^