我使用的应用程序覆盖了swing的默认JComboBox。 Leets称之为MyComboBox。此版本的ComboBox实现了FocusListener,并包含两个方法focusGained和focusLost。
现在,在应用程序的一个面板中,表单包含一个这种类型的ComboBox:
MyComboBox aMyComboBox = new MyComboBox();
我想像这样添加一个监听器:
aMyComboBox.addFocusListener(new FocusListener() {
public void focusLost(FocusEvent e) {
//Do something here
}
public void focusGained(FocusEvent e) {
//Do something else
}
});
但是当我运行代码时,它永远不会传递给这些方法,而只是从MyComboBox类执行focusGained / lost。
有没有办法在已实现FocusListener的对象上添加侦听器?
答案 0 :(得分:2)
其他FocusListener should work,除非MyComboBox中使用的实例使用该事件(AWT event consumption)。
尝试使用普通的JComboBox进行示例 - 这将有助于缩小问题的原因。