现在有这样一个问题, 我按下一个键不松手(比如字母a), 可以正常处理事件,但是只要再按一下随便一个什么键, 之前按的键监听就失效了.就算松手也不处理字母a的keyReleased事件了. 这个问题在swing里不存在. 难道是SWT的按键监听机制不一样?下面是我的代码,粘贴到Eclipse里直接运行(build里要添加swt相关的库)
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.KeyAdapter;
import org.eclipse.swt.events.KeyEvent;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;
public class SWTKeyTest { public static void main(String[] args) {
Display display = new Display();
Shell shell = new Shell(display,SWT.MIN|SWT.CLOSE);
shell.setSize(200,50);
shell.addKeyListener(new KeyAdapter(){ public void keyPressed(KeyEvent e) {
int key = e.keyCode;
if(key == 'a') {
System.out.println("<━━━");
}
} public void keyReleased(KeyEvent e) {
int key = e.keyCode;
if(key == 'a') {
System.out.println("<━━━disposed!!!");
}
}

});
shell.open();
while(!shell.isDisposed()) {
if(!display.readAndDispatch()) display.sleep();
}
display.dispose();
}}哪位大哥用过SWT的按键处理..希望指点一二,....谁能帮我解决一下 我感谢他八辈祖宗了~~~