当前位置: 代码迷 >> Eclipse >> 急关于SWT的有关问题
  详细解决方案

急关于SWT的有关问题

热度:21   发布时间:2016-04-23 14:26:56.0
急急,高手请进,关于SWT的问题
我想用SWT实现以下功能:
面板上有两个按钮(Start和Cancel),
当点击Start后,运行以下代码:
long   start=System.currentTimeMillis();
long   end;
long   cnt=0;
while(true)
{
cnt++;
System.out.println(cnt);
end=System.currentTimeMillis();
if(end-start> 1000*10)
break;
}

我想在点击运行这段代码期间能点击Cancel将运行取消掉,问题是一旦Start了,面板上的Cancel就点不动,直到上面的运行完为止才可以点动。请高手指点,怎样才能不是Cancel按钮在Start运行期间不失效。我使用过  
display.asyncExec(new   Runnable()),但是仍然不成功。
谢谢了!急等,就这么多分了,知道不够,我会加的。

------解决方案--------------------
我觉得不是失效
很有可能是你的cpu被耗尽,没有时间响应你的界面请求
你可以执行一段时间让线程sleep,然后你再试试:)
  相关解决方案