我想添加一个组合框以更改应用程序中的字体或字体大小。我已经构建了两个组合框,但是我不知道如何更改每个标签的字体和字体大小。如果在CSS中设置默认字体,选择新字体后是否可以以某种方式更改它?我不喜欢在我现在和将来拥有的每个标签上添加setFont(font,fontSize)的想法。
public class SettingsController
{
@FXML
private ComboBox<String> font;
@FXML
private ComboBox<Integer> fontSize;
public void initialize()
{
ObservableList<String> fonts = FXCollections.observableArrayList(Font.getFamilies());
font.setItems(fonts);
List<Integer> fontSizeList = new ArrayList<>();
for (Integer fontSizeNumber = 8; fontSizeNumber < 15; fontSizeNumber++)
{
fontSizeList.add(fontSizeNumber);
}
ObservableList<Integer> fontSizes = FXCollections.observableArrayList(fontSizeList);
fontSize.setItems(fontSizes);
if (font.getItems().contains("Arial"))
{
font.getSelectionModel().select("Arial");
}
fontSize.getSelectionModel().select((Integer) 12);
}
}