私はAutoComplete ComboBox in JavaFXを読みましたが、ほとんどのアップルの答えはラムダ式を使用しています。ラムダ式のないJavaFXのオートコンプリートコンボボックス
私のプロジェクトでは私はそれらを使うことができないので、誰かがラムダ式なしでコードを提供できるかどうか尋ねたいと思います。あなたのIDEを前後に変換することができるはず
1)
comboBox.getEditor().focusedProperty().addListener(observable -> {
if (comboBox.getSelectionModel().getSelectedIndex() < 0) {
comboBox.getEditor().setText(null);
}
});
2)
comboBox.addEventHandler(KeyEvent.KEY_PRESSED, t -> comboBox.hide());
すべてのラムダ式はanonymusクラスに変換することができます。しかし、javafx ** 8でラムダを使用することは許されていません**ラムダを使用するAPIにクラスがあるので、不条理な制約のようです... – fabian
私はバージョン7を使用しています。 lamda式がこれを参照してください知っている。 –
2つのメソッドに関するドキュメントを参照することで、非ラムダ実装の記述方法を決定できます。[Observable.addListener](http://docs.oracle.com/javase/8/javafx/api/javafx/ Bean/Observable.html#addListener-javafx.beans.InvalidationListener-)および[Node.addEventHandler](http://docs.oracle.com/javaf/8/javafx/api/javafx/scene/Node.html#addEventHandler- javafx.event.EventType-javafx.event.EventHandler-)。匿名のクラスを書くことに慣れていると仮定します。 – VGR