通常仅在您按下Enter键或将焦点从组合框的编辑器移开时才触发动作侦听器。拦截对编辑器进行的单个更改的正确方法是注册文档侦听器:
final JTextComponent tc = (JTextComponent) combo.getEditor().getEditorComponent();tc.getdocument().adddocumentListener(this);
所述的documentListener接口具有每当文档衬板编辑器被修改(中的insertUpdate,中的removeUpdate,changeUpdate)被调用的方法。
您还可以使用匿名类对事件的来源进行更细粒度的控制:
final JTextComponent tcA = (JTextComponent) comboA.getEditor().getEditorComponent();tcA.getdocument().adddocumentListener(new documentListener() { ... pre that uses comboA ...});final JTextComponent tcB = (JTextComponent) comboB.getEditor().getEditorComponent();tcB.getdocument().adddocumentListener(new documentListener() { ... pre that uses comboB ...});
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)