我有一个非常简单的愿望 - 我不希望 JComboBox 响应箭头键按下。我不想在箭头键上的弹出窗口中选择项目,或者事实上我也不想在按下向下箭头时显示弹出窗口。
这应该是一个简单的任务,但我发现的所有线程都建议人们“不要这样做!不要更改默认的预期行为!用户会讨厌你!”
好吧,无需详细说明 - 我需要它。我有一个非常具体的应用程序,不需要组合框来响应箭头。不过,我仍然需要保持专注。
如何禁用箭头键?我尝试添加 KeyListener,但该框仍然响应默认键绑定。
谢谢你。
将
KeyListener
添加到您的 JComboBox
并简单地消耗所有事件以防止进一步处理。
combo.addKeyListener(new KeyListener() {
@Override
public void keyTyped(KeyEvent e) {
e.consume();
}
@Override
public void keyPressed(KeyEvent e) {
e.consume();
}
@Override
public void keyReleased(KeyEvent e) {
e.consume();
}
});