各位SWT程序员您好,
今天我想在我的自定义SWT组合视图中添加一个侦听器。(有点修改)代码:
combo.addListener(SWT.ALL, new Listener() {
@Override
public void handleEvent(Event event) {
//some irrelevant code
String text = combo.getText();
System.out.println(text);
}
但是,当我在文本字段中输入某些内容时,在我触发事件之前在组合视图中的文本会被输出,这意味着combo. getText()返回它在事件触发之前包含的文本。
如何解决此问题并在此侦听器中获取更新的组合文本输入?我不能使用ModifyListener,它必须是侦听器接口(因为我需要在事件类型之间有所不同并相应地做一些事情)。
提前感谢,
论坛浏览器
SWT. ALL
不是addListener
的合法值。碰巧它会被解释为SWT.KeyDown
。
使用SWT. Modify
侦听修改事件:
combo.addListener(SWT.Modify, new Listener() {