3
私はコードの一部を持っています。私はコンボボックスに自分のOS上にあるすべてのフォントを表示したい。フォントの名前は、各フォントの外観を示すプレビューのように見えるはずです。javafxでコンボボックスのテキストフォントを更新する
List<String> families = Font.getFamilies();
fontfamilies = FXCollections.observableArrayList(families);
comboBox.setItems(fontfamilies);
comboBox.getSelectionModel().select(0);
comboBox.setCellFactory((ListView<String> listView) -> {
final ListCell<String> cell = new ListCell<String>() {
@Override
public void updateItem(String item, boolean empty) {
super.updateItem(item, empty);
if (item != null) {
setText(item);
setFont(new Font(item, 12));
}
}
};
//cell.setPrefWidth(120);
return cell;
});
しかし、私はこのエラーを取得する:これは私のコードです
Error:(59, 20) java: incompatible types: bad return type in lambda expression
javafx.scene.control.ListCell<java.lang.String> cannot be converted to javafx.scene.control.ListCell<capture#1 of ?>
誰もがこの問題で私を助けることができますか?
あなたは私がそのようdefinied 'comboBox' –
を定義した方法を示してください:@FXML 民間のComboBox >コンボボックス。 – drewpol
私のせいで、前にこれを見たことがない、ComboBoxにする必要があります –
drewpol