Eclipse 外掛程式實現進度條

2021-09-01 08:54:38 字數 950 閱讀 6575

eclipse 外掛程式中,很多時候會遇到需要長時間執行的任務, 這些任務需要放在後台執行緒裡執行, 否則,就會使 eclipse 的 ui 僵住。 這個時候,我們需要使用 eclipse 提供的 job 或者 progressmonitordialog 實現。

1. 使用 job

job job = new job("job")

trycatch (interruptedexception e)

monitor.subtask("start sub task: " + i);

monitor.worked(1);

}monitor.done();

return status.ok_status;}};

job.schedule();

效果如下:

job 是非同步執行, 在 job 執行的時候, eclipse 的主介面還是可以進行其他操作的。

2. 使用 progressmonitordialog

progressmonitordialog dialog = new progressmonitordialog(handlerutil.getactiveshell(event));

trytimeunit.milliseconds.sleep(200l);

monitor.subtask("start sub task: " + i);

monitor.worked(1);

}monitor.done();

}});

}catch (invocationtargetexception e)

catch (interruptedexception e)

效果如下:

progressmonitordialog 是 modal 的對話方塊, 會 block 住 eclipse 的主介面。

Extjs實現進度條

做extjs開發中,往往後台程式可能要執行一段時間才能得到返回結果,加入進度條可以提高客戶體驗度,以下為兩種便捷的方式 1.提交資料前用ext.msg.wait 提示 正在處理資料,請稍候 彈出等待條,資料處理成功後用ext.msg.hide 將等待去掉,例如 ext.msg.wait 提示 正在處...

CCProgressTimer實現進度條

原帖位址 cocos2d x提供了ccprogresstimer類可以方便地實現進度條的功能,cocos2d x 1.x版本與cocos2d x 2.x版本對progresstimer的型別提供的不同,2.x版本只提供了以下2種 typedef enum ccprogresstimertype 另外...

C 進度條實現

namespace progress namespace progress public mainfrm private void button1 click object sender,eventargs e private void handlethread 執行緒處理函式,實現耗時任務 cla...