JavaFX可编辑组合框
我正在尝试使用可编辑的组合框。我想添加一个用于按ENTER键的侦听器。我尝试了以下选项,但都不起作用:(JavaFX可编辑组合框,javafx,javafx-8,Javafx,Javafx 8,我正在尝试使用可编辑的组合框。我想添加一个用于按ENTER键的侦听器。我尝试了以下选项,但都不起作用:( cmb\u year是组合框对象 cmb_year.setOnKeyPressed(new EventHandler<KeyEvent>() { @Override public void handle(KeyEvent t) { if (t.getCode() == KeyCode.ENTER) {
cmb\u year
是组合框对象
cmb_year.setOnKeyPressed(new EventHandler<KeyEvent>() {
@Override
public void handle(KeyEvent t) {
if (t.getCode() == KeyCode.ENTER) {
System.out.println("Entered");
} else if (t.getCode() == KeyCode.ESCAPE) {
System.out.println("Entered");
}else
{
}
}
});
cmb_year.getEditor().setOnKeyPressed(new EventHandler<KeyEvent>() {
@Override
public void handle(KeyEvent t) {
if (t.getCode() == KeyCode.ENTER) {
System.out.println("Entered");
} else if (t.getCode() == KeyCode.ESCAPE) {
System.out.println("Entered");
}else
{
}
}
});
cmb\u year.setOnKeyPressed(新事件处理程序(){
@凌驾
公共无效句柄(KeyEvent t){
if(t.getCode()==KeyCode.ENTER){
系统输出打印项次(“输入”);
}else if(t.getCode()==KeyCode.ESCAPE){
系统输出打印项次(“输入”);
}否则
{
}
}
});
cmb_year.getEditor().setOnKeyPressed(新事件处理程序(){
@凌驾
公共无效句柄(KeyEvent t){
if(t.getCode()==KeyCode.ENTER){
系统输出打印项次(“输入”);
}else if(t.getCode()==KeyCode.ESCAPE){
系统输出打印项次(“输入”);
}否则
{
}
}
});
您可以使用以下代码:
cmb_year.addEventFilter(KeyEvent.KEY_PRESSED,new EventHandler<KeyEvent>() {
@Override
public void handle(KeyEvent t) {
if (t.getCode() == KeyCode.ENTER) {
System.out.println("Entered");
} else if (t.getCode() == KeyCode.ESCAPE) {
System.out.println("Entered");
}else
{
}
}
});
cmb\u year.addEventFilter(按KeyEvent.KEY\u,新建EventHandler()){
@凌驾
公共无效句柄(KeyEvent t){
if(t.getCode()==KeyCode.ENTER){
系统输出打印项次(“输入”);
}else if(t.getCode()==KeyCode.ESCAPE){
系统输出打印项次(“输入”);
}否则
{
}
}
});