1
我有一个列表添加到我的小程序焦点。Java - 覆盖列表的关键处理
在handleEvent中,我处理所有按键。
我对按键执行操作。
当按键是方向键时,列表也会跳到各处。这是不可取的。该列表只能响应鼠标事件而不是关键事件。
如何覆盖或删除List组件的默认密钥处理?
我有一个列表添加到我的小程序焦点。Java - 覆盖列表的关键处理
在handleEvent中,我处理所有按键。
我对按键执行操作。
当按键是方向键时,列表也会跳到各处。这是不可取的。该列表只能响应鼠标事件而不是关键事件。
如何覆盖或删除List组件的默认密钥处理?
假设它是一个支持KeyListener的组件,只需添加一个KeyListener
和consume()
它就不会触及组件。 增加了一些额外的键。
jl.addKeyListener(new KeyAdapter() {
public void keyPressed(KeyEvent ke) {
int key = ke.getKeyCode();
switch (key){
case KeyEvent.VK_DOWN:
case KeyEvent.VK_UP:
case KeyEvent.VK_RIGHT:
case KeyEvent.VK_LEFT:
case KeyEvent.VK_KP_DOWN:
case KeyEvent.VK_KP_UP:
case KeyEvent.VK_KP_RIGHT:
case KeyEvent.VK_KP_LEFT:
ke.consume();
break;
default:
}
});
您使用的是什么类型的列表成员? JList? – Krrose27
对不起,它的java.awt.List没有摆动。 –
没关系。见下文。 – Krrose27