普通的进度条
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 );
for ( int i = 0 ;i < 100 ;i ++ ) {
if (monitor.isCanceled()) {
return ;
}
monitor.worked( 1 );
Thread.sleep( 50 );
}
monitor.done();
}
} ;
new ProgressMonitorDialog(shell).run( true , true , runnable);
shell.open();
shell.layout();
while ( ! shell.isDisposed()) {
if ( ! display.readAndDispatch())
display.sleep();
}
}
}
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 );
for ( int i = 0 ;i < 100 ;i ++ ) {
if (monitor.isCanceled()) {
return ;
}
monitor.worked( 1 );
Thread.sleep( 50 );
}
monitor.done();
}
} ;
new ProgressMonitorDialog(shell).run( true , true , runnable);
shell.open();
shell.layout();
while ( ! shell.isDisposed()) {
if ( ! display.readAndDispatch())
display.sleep();
}
}
}