import
?java.lang.reflect.InvocationTargetException;
import
?org.eclipse.core.runtime.IProgressMonitor;
import
?org.eclipse.jface.dialogs.ProgressMonitorDialog;
import
?org.eclipse.jface.operation.IRunnableWithProgress;
import
?org.eclipse.swt.widgets.Display;
import
?org.eclipse.swt.widgets.Shell;
public
?
class
?TestProgress?
{
????
static
?
boolean
?stopflg?
=
?
false
;
????
/**
?????*?Launch?the?application
?????*?
@param
?args
?????
*/
????
public
?
static
?
void
?main(String[]?args)?
throws
?Exception
{
????????
final
?Display?display?
=
?Display.getDefault();
????????
final
?Shell?shell?
=
?
new
?Shell();
????????shell.setSize(
500
,?
375
);
????????shell.setText(
"
SWT?Application
"
);
????????
????????
//
????????IRunnableWithProgress?runnable?
=
?
new
?IRunnableWithProgress()
{
????????????
public
?
void
?run(IProgressMonitor?monitor)?
throws
?InvocationTargetException,?InterruptedException?
{
????????????????monitor.beginTask(
"
generate
"
,?
30
);
????????????????
int
?i
=
0
;
????????????????
while
(
true
)
{
????????????????????
if
(stopflg)
{
????????????????????????
break
;
????????????????????}
????????????????????i
++
;
????????????????????
if
(i
==
30
)
{
????????????????????????i
=
0
;
????????????????????????monitor.beginTask(
"
generate
"
,?
30
);
????????????????????}
????????????????????monitor.worked(
1
);
????????????????????Thread.sleep(
100
);
????????????????}
????????????????monitor.done();
????????????}
????????}
;
????????
new
?ProgressMonitorDialog(shell).run(
true
,?
true
,?runnable);
????????shell.open();
????????shell.layout();
????????
while
?(
!
shell.isDisposed())?
{
????????????
if
?(
!
display.readAndDispatch())
????????????????display.sleep();
????????}
????}
}



















































更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對(duì)您有幫助就好】元
