analyseWriter/src/app/ProgressBar.java

78 lines
2.0 KiB
Java

package app;
import java.awt.BorderLayout;
import java.awt.Container;
import javax.swing.JFrame;
import javax.swing.JProgressBar;
import javax.swing.SwingUtilities;
public class ProgressBar extends JFrame implements Runnable{
/**
*
*/
private static final long serialVersionUID = 1L;
@Override
public void run() {
ProgressBar myProgressBar = new ProgressBar();
int i = 0;
while (i <= 100) {
System.out.println("" + i + "%");
myProgressBar.setValue(i);
try {
Thread.sleep(50);
} catch (InterruptedException e) {
Thread.currentThread().interrupt();
break;
}
i = i + 5;
}
}
private JProgressBar bar;
public ProgressBar() {
super("loading");
setSize(200, 100);
Container content = getContentPane();
content.setLayout(new BorderLayout());
bar = new JProgressBar();
bar.setMinimum(0);
bar.setMaximum(100);
bar.setStringPainted(true);
bar.setBorder(null);
content.add(bar, BorderLayout.SOUTH);
setVisible(true);
}
void updateProgress(final int newValue) {
bar.setValue(newValue);
}
public void setValue(final int j) {
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
updateProgress(j);
}
});
}
public static void main(final String Args[]) {
ProgressBar myProgressBar = new ProgressBar();
int i = 0;
while (i <= 100) {
System.out.println("" + i + "%");
myProgressBar.setValue(i);
try {
Thread.sleep(50);
} catch (InterruptedException e) {
Thread.currentThread().interrupt();
break;
}
i = i + 5;
}
}
}