Free Data Structures and Algorithms Course









Subscribe below and get all best seller courses for free !!!










OR



Subscribe to all free courses

How to use JProgressBar in Java using Swing Framework API ?.


Program to demonstrate working of JProgressBar in Java using Swing API

package com.hubberspot.swing.code;

import javax.swing.*;

public class ProgressBarDemo extends JPanel {

	// 1. Create a instance variable of JProgressBar
	JProgressBar progressBar;

	// 2. Constructor call to ProgressBarDemo will 
	// create a object of JProgressBar and set 
	// minimum and maximum value of progress bar 
	// to 0 and 100
	public ProgressBarDemo() {

		progressBar = new JProgressBar();
		progressBar.setMinimum(0);
		progressBar.setMaximum(100);

		// 3. Add Progress bar to Panel 
		add(progressBar);

	}

	// 4. progress method will update the value of 
	// progress bar every 100 ms after executing 
	// sleep method
	public void progress(int value) {

		progressBar.setValue(value);

	}

	public static void main(String args[]) {

		// 5. Create a object of customized JPanel
		final ProgressBarDemo progressBarDemo = new ProgressBarDemo();

		// 6. Create a Object of JFrame and setting title as 
		// "Progress Bar Demo"
		JFrame frame = new JFrame("Progress Bar Demo");

		//	Give frame a size in pixels as say 300,300 
		frame.setSize(200, 100);


		// 7. set a operation when a user close the frame, here it 
		// closes the frame and exits the application
		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);   

		// 8. Setting the Content Pane as ProgressBarDemo
		frame.setContentPane(progressBarDemo);

		// 9. Packing all the components together
		frame.pack();

		// 10. after setting contentPane, we make it 
		// visible on the frame by calling the method as 
		// setVisible and passing value as true.
		frame.setVisible(true);

		// 11. Having for loop which will loop from 0 to 100
		// it will invoke a dedicated thread to Swing Component
		// "JProgressBar" and on each loop will update the value
		// of JProgressBar by 1. It will accomplish this by calling 
		// progressBarDemo.progress method and pass the updated or
		// completed status to it.
		for (int i = 0; i <= 100; i++) {
			final int updateCompleted = i;
			try {
				SwingUtilities.invokeLater(new Runnable() {
					public void run() {
						progressBarDemo.progress(updateCompleted);
					}
				});
				// 12. Giving each loop a pause of 100 ms and 
				// updating JProgressBar meter by 1.
				Thread.sleep(100);
			} catch (InterruptedException e) {;}
		} 
	}
}


Output of the program : 




 
 
© 2021 Learn Java by Examples Template by Hubberspot