实际上,我们需要可编辑的下拉菜单。所以我们已经更改了 setedtitable(true) 并添加了 StringConvertor。但是 KeyPressed 和 Keytyped 以前在过滤器不是 true 时工作。但现在它没有调用。谁能帮我避免这种情况?由于 keyPressed 未调用,过滤器无法正常工作....
问问题
279 次
1 回答
2
我处理这个的方法是获取 ComboBox 的 TextEditor 并添加 onKeyTyped 事件。
注意:如果 ComboBox 设置为可编辑,则返回 TextEditor。
例子:
package controller;
import java.net.URL;
import java.util.ResourceBundle;
import javafx.collections.FXCollections;
import javafx.event.EventHandler;
import javafx.fxml.FXML;
import javafx.fxml.Initializable;
import javafx.scene.control.ComboBox;
import javafx.scene.control.TextField;
import javafx.scene.input.KeyEvent;
public class AddDataController implements Initializable {
@FXML
private ComboBox<String> groupName;
@Override
public void initialize(URL arg0, ResourceBundle arg1) {
groupName.setEditable(true);
TextField tf = groupName.getEditor();
tf.setOnKeyTyped(new EventHandler<KeyEvent>(){
@Override
public void handle(KeyEvent event) {
// To Do
}
});
}
}
于 2015-07-02T17:53:34.950 回答