Java SWT:如何通过源代码触发ModifyListener?

Oba*_*bay 0 java swt

我已经附加了ModifyListener一个Combo盒子,它工作正常.但是如何通过源代码触发它呢?有没有比这更好的方法?:

int selected = myCombo.getSelectionIndex();
myCombo.select(selected + 1);
myCombo.select(selected);
Run Code Online (Sandbox Code Playgroud)

Sim*_*mon 7

以编程方式触发ModifyEvent以执行某些GUI更新(我假设您正在尝试这样做)并不是一个好的设计.

最好将要调用的功能拆分为单独的功能并直接调用它.像这样的东西:

private void doSomething() {
  // TODO: Something!
}

....

myCombo.addModifyListener(new ModifyListener(){

public void modifyText(ModifyEvent arg0) {
  doSomething();
}});

doSomething();
Run Code Online (Sandbox Code Playgroud)

您需要提供给doSomething()方法的任何参数都应该没有ModifyEvent.

希望这可以帮助.