ProgressMonitorDialog progressMonitorDialog = new ProgressMonitorDialog(null);
progressMonitorDialog.setCancelable(true);
try {
progressMonitorDialog.run(true,true,new IRunnableWithProgress(){//第一个参数true时
public void run(IProgressMonitor monitor)throws InvocationTargetException, InterruptedException {
monitor.beginTask(ResViewConstant.beginning+"...", IProgressMonitor.UNKNOWN);
final SchemaCheckModels schemaCheckModels=SchemaCheckCalculation.loadSchemaChecks(nodeModel,monitor);
monitor.done();
Display.getDefault().syncExec(new Runnable(){//使用此方法Display.getDefault().syncExec
public void run() {
ResRefreshReportDialog resRefreshReportDialog=new ResRefreshReportDialog(null);
resRefreshReportDialog.setSchemaCheckModels(schemaCheckModels);
resRefreshReportDialog.setNodeModel(nodeModel);
resRefreshReportDialog.open();
}
});
}
});
}catch (Exception e) {
UIHelper.handleException(e);
}
解决swt进度条假死
猜你喜欢
转载自qun715715.iteye.com/blog/2186922
今日推荐
周排行