Handling JProgressBar Events: notification of data model changes through a ChangeListener : JProgressBar « Swing « Java Tutorial






Handling JProgressBar Events: notification of data model changes through a ChangeListener
import java.awt.BorderLayout;

import javax.swing.JFrame;
import javax.swing.JProgressBar;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;

class BoundedChangeListener implements ChangeListener {
  public void stateChanged(ChangeEvent changeEvent) {
    Object source = changeEvent.getSource();
    if (source instanceof JProgressBar) {
      JProgressBar theJProgressBar = (JProgressBar) source;
      System.out.println("ProgressBar changed: " + theJProgressBar.getValue());
    } else {
      System.out.println("Something changed: " + source);
    }
  }
}

public class ProgressBarStepBoundedChangeListener {

  public static void main(String args[]) throws Exception {
    JFrame frame = new JFrame("Stepping Progress");
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    final JProgressBar aJProgressBar = new JProgressBar(JProgressBar.VERTICAL);
    aJProgressBar.setStringPainted(true);

    aJProgressBar.addChangeListener(new BoundedChangeListener());

    for (int i = 0; i < 10; i++) {
      aJProgressBar.setValue(i++);
      Thread.sleep(100);
    }

    frame.add(aJProgressBar, BorderLayout.NORTH);
    frame.setSize(300, 200);
    frame.setVisible(true);
  }
}








14.32.JProgressBar
14.32.1.JProgressBarJProgressBar
14.32.2.Creating a JProgressBar Component with an Unknown Maximum
14.32.3.A progress bar is used for lengthy tasks.
14.32.4.Labeling a JProgressBarLabeling a JProgressBar
14.32.5.Virtical JProgressBarVirtical JProgressBar
14.32.6.Creating a modal progress dialog
14.32.7.Set all the values at once by using the model
14.32.8.Using an Indeterminate JProgressBarUsing an Indeterminate JProgressBar
14.32.9.Displaying the Percentage Done on a JProgressBar Component
14.32.10.Getting and Setting the Values of a JProgressBar Component
14.32.11.Listening for Value Changes in a JProgressBar Component
14.32.12.Handling JProgressBar Events: notification of data model changes through a ChangeListenerHandling JProgressBar Events: notification of data model changes through a ChangeListener
14.32.13.ProgressBar and Task
14.32.14.SwingWorker and ProgressBar
14.32.15.Customizing JProgressBar Look and Feel