Solve swt progress bar suspended animation

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);
        }

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=326392349&siteId=291194637