我有EditorPart
以下方法
protected void addEnterNextListener(final Control controle){
controle.addTraverseListener(new TraverseListener() {
@Override
public void keyTraversed(TraverseEvent e) {
if(e.character == SWT.CR)
controle.traverse(SWT.TRAVERSE_TAB_NEXT);
}
});
}
所以,当我有一个需要输入到下一个字段行为的字段时,我只是调用这个方法传递我的字段(例如:通常是 a Text
)
但是现在我需要在 a 中使用这种行为TitledAreaDialog
但它与输入调用okPressed
对话框的事实。覆盖它的唯一方法是在对话框中执行类似的操作
this.txtCodInterno.addTraverseListener(new TraverseListener() {
@Override
public void keyTraversed(TraverseEvent e) {
if(e.keyCode == 13 || e.keyCode == 16777296){ // Se for qualquer um dos enters
e.doit = false;
txtQuantidade.forceFocus();
}
}
});
这很丑陋,让我覆盖了我所有的 TraverseListener ...
有没有办法让 enter 在对话框中的行为像选项卡一样,而无需尝试关闭他?
谢谢