Advertisement
Guest User

Untitled

a guest
Feb 26th, 2015
215
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.67 KB | None | 0 0
  1. import java.util.*;
  2. import javax.swing.*;
  3. import java.awt.*;
  4. import java.awt.event.*;
  5.  
  6. public class Lab2Part2 extends JFrame{
  7. private JButton jbShow;
  8. private JProgressBar progressb;
  9. private JProgressBar progressb2;
  10.  
  11. public static void main(String [] args){
  12. (new Thread()).start();
  13.  
  14. Lab2Part2 p2 = new Lab2Part2();
  15. p2.setTitle("Lab 2");
  16. p2.pack();
  17. p2.setLocationRelativeTo(null);
  18. p2.setDefaultCloseOperation( EXIT_ON_CLOSE );
  19. p2.setVisible(true);
  20. p2.setResizable(true);
  21. }//end main
  22.  
  23. public Lab2Part2(){
  24. progressb = new JProgressBar();
  25. progressb2 = new JProgressBar();
  26.  
  27. InnerProgress p1 = new InnerProgress("Progress 1", progressb);
  28. InnerProgress p2 = new InnerProgress("Progress 2", progressb2);
  29.  
  30.  
  31.  
  32. JPanel jpMain = new JPanel(new GridLayout(0,1));
  33. jbShow = new JButton("Let's start this show");
  34. jpMain.add(jbShow);
  35. jpMain.add(p1);
  36. jpMain.add(p2);
  37.  
  38. add (jpMain, BorderLayout.CENTER);
  39. jbShow.addActionListener( new ActionListener(){
  40. public void actionPerformed(ActionEvent ae){
  41. Thread t1 = new Thread(p1);
  42. Thread t2 = new Thread(p2);
  43.  
  44. t1.start();
  45. t2.start();
  46. }
  47. });
  48.  
  49. }//end constructor
  50.  
  51. class InnerProgress extends JPanel implements Runnable{
  52. private String progress;
  53. private JProgressBar progressb;
  54. private boolean keepGoing = true;
  55.  
  56. public InnerProgress(String _progress, JProgressBar _progressb){
  57. this.progress = _progress;
  58. this.progressb = _progressb;
  59. this.add(new JLabel(progress));
  60. this.add(progressb);
  61. progressb.setStringPainted(true);
  62.  
  63. progressb.setMaximum(80);
  64. progressb.setMinimum(0);
  65. }
  66.  
  67. public void run(){
  68. progressb.setIndeterminate(true);
  69. final long startTime = System.currentTimeMillis();
  70. System.out.println("We are running" + progress);
  71. for(int i=0; i<=80 && keepGoing == true; i++){
  72.  
  73. int sleepTime =(int)(Math.random() * 100);
  74.  
  75.  
  76. try{
  77. Thread.sleep(sleepTime);
  78. }
  79. catch(InterruptedException e){
  80.  
  81. }
  82.  
  83. progressb.setValue(i);
  84.  
  85. final long endTime = System.currentTimeMillis();
  86. System.out.println("We are running" + progress+ endTime);
  87. }
  88. keepGoing = false;
  89. progressb.setIndeterminate(true);
  90.  
  91. }
  92. }
  93.  
  94. }//end class
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement