listItemsCombo.getEditor().getEditorComponent().addKeyListener(new keyPressListener()); //Works correct
这工作得很好。但是,在将keyListener添加到jcomboBox时,按“Enter”时不会重新组织keyPress。将keyListener添加到jComboxBox和将侦听器添加到其编辑器之间的确切区别是什么?何时将Listeners添加到编辑器?
listItemsCombo.addKeyListener(new KeyPressListener())//When should we use this?
向jComboxBox添加keyListener和向其编辑器添加侦听器之间的确切区别是什么?
KeyEvents仅分派到具有焦点的组件。
何时将侦听器添加到编辑器?
您不应该在组合框或编辑器上使用KeyListener。Swing旨在与键绑定
一起使用。使用键绑定,即使组件没有焦点(如果您愿意),您也可以处理KeyStroke
。有关详细信息,请阅读Swing教程中有关如何使用键绑定的部分。