我有一个JList列表和下面的代码行:
list.getInputMap().put(KeyStroke.getKeyStroke('d'), "action");因此,当我的列表在焦点上,并按下键盘上的d键时,应该执行一个操作。该操作考虑到当前选择了我的JList的哪一项。问题是,每当我的列表中有第一个字母d‘的项目时,我的选择将跳到该条目,然后执行操作(应用于错误的项)。
因此,我的问题是:如何在JLists中禁用由键入字母引起的选择跳转?
发布于 2015-12-13 14:12:51
您可以从KeyListeners中删除JList。
我试过了,但不知道这在标准功能方面有什么缺点。
KeyListener[] lsnrs = list.getKeyListeners();
for (int i = 0; i < lsnrs.length; i++) {
list.removeKeyListener(lsnrs[i]);
}https://stackoverflow.com/questions/34251765
复制相似问题