我有一个班级,如下:
public class MyFrame extends javax.swing.JFrame implements KeyListener { ... }
在构造函数中:
addKeyListener(this);
setFocusable(true);
只要窗口本身处于焦点,这就可以工作。如果我专注于该窗口中的组件,则键侦听器不再侦听。我想要它,以便每当窗口是活动窗口时,无论焦点在哪个特定子组件上,都将触发关键监听器。我希望保持焦点遍历关键,以提高生活质量,但它们并不重要。
我该怎么做?
答案 0 :(得分:3)
最好使用每个组件的键绑定API,您可以使用键绑定来更改触发给定操作所需的焦点级别,例如,当组件具有焦点时,组件是子组件时焦点组件的内容,或者当它包含在焦点窗口中时......
有关详细信息,请参阅How to Use Key Bindings
答案 1 :(得分:2)