2013-02-22 58 views
1

我试着去改变一个ComboBox字体上了JavaFx,所以我有:设置JavaFx组合框字体?

ComboBox cbCategoria = new ComboBox();

林新在JavaFX这样一些示例代码将是巨大的:d, 一种方法可以做到这一点没有CSS?如果不是我怎么能使用CSS,我还没有学习如何使用CSS样式:(

回答

5

我认为没有办法没有CSS。你可以指定样式到该组件示例:。

VBox vbox = new VBox(10); 
vbox.setAlignment(Pos.CENTER_LEFT); 

ComboBox<String> noStyled = new ComboBox<>(); 
noStyled.getItems().addAll("One", "Two", "Three"); 

ComboBox<String> styled = new ComboBox<>(); 
styled.setPrefWidth(150); 
styled.getItems().addAll("One", "Two", "Three"); 
styled.setStyle("-fx-font: 30px \"Serif\";"); 

vbox.getChildren().addAll(noStyled, styled); 
Scene scene = new Scene(vbox); 
stage.setScene(scene); 
stage.show(); 

或者你可以将样式分配给应用程序在这两种情况下,我建议你去通过在Oracle网站上的tutorial CSS Sectionreference guide

希望它可以帮助

+0

谢谢很多人xD你救了我^^它完美的作品:D – user1667217 2013-03-06 03:22:37

2
VBox vbox = new VBox(10); 
vbox.setAlignment(Pos.CENTER_LEFT); 

ComboBox<String> noStyled = new ComboBox<>(); 
noStyled.getItems().addAll("One", "Two", "Three"); 

ComboBox<String> styled = new ComboBox<>(); 
styled.setPrefWidth(150); 
styled.getItems().addAll("One", "Two", "Three"); 
styled.setStyle("-fx-font: 30px \"Serif\";"); 

vbox.getChildren().addAll(noStyled, styled); 
Scene scene = new Scene(vbox); 
stage.setScene(scene); 
stage.show(); 

只是为了暗示。 如果你想使用上述code.you应该尝试这样

styled.setPrefWidth(150); 
styled.setMinHeight(30); 

相反的设置组合框的大小,

styled.setPrefSize(150,30); 

如果设置这样,你会得到例外。 我很困难。 希望它会有所帮助。