提问者:小点点

向JCombobox编辑器添加KeyListener和JCombobox本身有什么区别


    listItemsCombo.getEditor().getEditorComponent().addKeyListener(new keyPressListener()); //Works correct

这工作得很好。但是,在将keyListener添加到jcomboBox时,按“Enter”时不会重新组织keyPress。将keyListener添加到jComboxBox和将侦听器添加到其编辑器之间的确切区别是什么?何时将Listeners添加到编辑器?

   listItemsCombo.addKeyListener(new KeyPressListener())//When should we use this?

共1个答案

匿名用户

向jComboxBox添加keyListener和向其编辑器添加侦听器之间的确切区别是什么?

KeyEvents仅分派到具有焦点的组件。

何时将侦听器添加到编辑器?

您不应该在组合框或编辑器上使用KeyListener。Swing旨在与键绑定一起使用。使用键绑定,即使组件没有焦点(如果您愿意),您也可以处理KeyStroke。有关详细信息,请阅读Swing教程中有关如何使用键绑定的部分。