use*_*041 6 java events swing keylistener jcombobox
我有一个JComboBox的子类.我尝试使用以下代码添加一个密钥监听器.
addKeyListener(new KeyAdapter()
{
public void keyPressed(KeyEvent evt)
{
if(evt.getKeyCode() == KeyEvent.VK_ENTER)
{
System.out.println("Pressed");
}
}
});
然而,这无法正确检测用户何时按下按键.它实际上根本没有被调用.我添加这个监听器错了吗?还有其他方法可以添加吗?
jri*_*her 14
关键事件不会在盒子本身上被触发,而是它的编辑器.您需要将keyListener添加到JComboBox的编辑器而不是直接添加到框中:
comboBox.getEditor().getEditorComponent().addKeyListener(new KeyAdapter()
{
public void keyPressed(KeyEvent evt)
{
if(evt.getKeyCode() == KeyEvent.VK_ENTER)
{
System.out.println("Pressed");
}
}
});
Run Code Online (Sandbox Code Playgroud)
编辑:固定方法调用.
| 归档时间: |
|
| 查看次数: |
41369 次 |
| 最近记录: |