大家好! 我按照网上的例子写了SWT程序, 界面很简单,上面2个按钮,一个计数器,用户点击"开始"按钮,计数器开始从1累加,用户点击"停止"按钮,计数器停止,但是我用了 asyncExec后,点击开始界面就死掉了!! 改成syncExec也不行, 按照网上的例子在点击开始按钮后,使用代码(按照这篇文章:http://www.diybl.com/course/3_program/java/javajs/20071211/91567.html)Thread t=new Thread(new Mythread(displayUI)); t.start();
然后在 run方法里面调用 asyncExec 就会出现"invalid thread access "的错误! 到底怎么处理这种情况啊? 感觉 swt很不稳定,需求稍微变化他就适应不了了,多谢!
然后在 run方法里面调用 asyncExec 就会出现"invalid thread access "的错误! 到底怎么处理这种情况啊? 感觉 swt很不稳定,需求稍微变化他就适应不了了,多谢!
Thread t=new Thread();
display.asyncExec(t);要是swt不稳定,那你们还都用eclipse?
up,asyncExec不是那么用的。 Runnable runnable = new Runnable() {
public void run() {
......
}
};
this.getShell().getDisplay().asyncExec(runnable); // 关键在这一句上
Dispaly.getDefault()就可以得到,没有必要写那么长!!