Introdução ao JProgressBar

O JProgressBar é considerado parte do Java Swing, que é um pacote. Exibe visualmente o progresso de algumas das tarefas mencionadas. Além disso, demonstra a porcentagem da conclusão da tarefa mencionada. A barra no JProgressBar é preenchida à medida que a tarefa mencionada chega ao estágio de conclusão. JProgressBar também exibe algum texto, além de exibir a porcentagem de conclusão.

API Swing

A API de monitoramento de progresso do Swing inclui um total de três classes que facilitam o uso das barras de progresso. A subclasse de JProgressBar, JComponent é realmente considerada o componente gráfico que demonstra o progresso da operação. Além disso, ele também pode ser incorporado aos outros componentes gráficos.

Construtores de JProgressBar

Os construtores de JProgressBar são os seguintes:

  1. JProgressBar () : este construtor é usado para criar a barra de progresso sem nenhum texto.
  2. JProgressBar (orientação int) : esse construtor é usado para criar a barra de progresso junto com a orientação mencionada em seu parâmetro. Caso VERTICAL seja mencionado como parâmetro, a barra de progresso vertical será criada e, no caso SwingConstants.Horizontal será mencionado como parâmetro, a barra de progresso horizontal será criada.
  3. JProgressBar (int min, int max ): esse construtor é usado para criar a barra de progresso junto com o mínimo mencionado, bem como o valor máximo.
  4. JProgressBar (orientação int, int min, int max) : esse construtor é usado para criar a barra de progresso junto com o mínimo mencionado, bem como o valor máximo e também a orientação especificada no parâmetro. Se SwingConstants.VERTICAL for mencionado como um parâmetro, a barra de progresso vertical será criada e, no caso, SwingConstants. HORIZONTAL é mencionado como um parâmetro e, em seguida, a barra de progresso horizontal é criada.

Métodos de JProgressBar

Os métodos de JProgressBar são os seguintes:

  • int getMaximum (): este método é usado para retornar o valor máximo da barra de progresso.
  • int getMinimum () : este método é usado para retornar o valor mínimo da barra de progresso.
  • String getString () : este método é usado para retornar a representação de string do valor atual da barra de progresso.
  • void setMaximum (int t) : este método é usado para definir o valor máximo da barra de progresso para o valor de t.
  • void setMinimum (int t) : este método é usado para definir o valor mínimo da barra de progresso para o valor de t.
  • void setValue (int t) : este método é usado para definir o valor atual da barra de progresso para o valor de t.
  • void setString (String t) : Este método é usado para definir o valor da String de progresso como aquele que é uma String.

Abaixo é mencionada a sintaxe da classe javax.swing.JProgressBar.

Sintaxe:

public class JProgressBar extends JComponent implements SwingConstants, Accessible

Exemplos de JProgress

Aqui estão alguns exemplos de JProgressBar que são fornecidos abaixo com a implementação:

Exemplo # 1 - Barra de progresso horizontal

Código:

import java.awt.*;
import javax.swing.*;
public class Progress
(
public static void main(String() args)
(
final int max = 100;
final JFrame frame = new JFrame("JProgress Demo");
// this would create a progress bar
final JProgressBar jp = new JProgressBar();
jp.setMinimum(0);
jp.setMaximum(max);
jp.setStringPainted(true);
// this would add a progress bar
frame.setLayout(new FlowLayout());
frame.getContentPane().add(jp);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(200, 200);
frame.setVisible(true);
// this would be updating the progressbar
for (int i = 0; i <= max; i++)
(
final int presentValue = i;
try
(
SwingUtilities.invokeLater(new Runnable()
(
public void run()
(
jp.setValue(presentValue);
)
));
java.lang.Thread.sleep(100);
)
catch (InterruptedException e)
(
JOptionPane.showMessageDialog(frame, e.getMessage());
)
)
)
)

Resultado:

`

Exemplo # 2 - Barra de progresso vertical

Código:

// Program for creation of the vertical progress bar
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class progress extends JFrame
(
// creation of the frame
static JFrame frame;
static JProgressBar bar;
public static void main(String() args)
(
// create a frame
frame = new JFrame("ProgresBar demo");
// creation of the panel
JPanel panel = new JPanel();
// creation of the progressbar
bar = new JProgressBar(SwingConstants.VERTICAL);
// setting initial value
bar.setValue(0);
bar.setStringPainted(true);
// addition of progressbar
panel.add(bar);
// addition of panel
frame.add(panel);
// setting the size of the frame
frame.setSize(500, 500);
frame.setVisible(true);
fill();
)
// function that increases the progress
public static void fill()
(
int j = 0;
try (
while (j <= 100) (
// filling the menu bar
bar.setValue(j + 10);
// delaying the thread
Thread.sleep(1000);
j += 20;
)
)
catch (Exception e) (
)
)
)

Resultado :

Exemplo # 3 - Barra de progresso com string

Código:

import java.awt.*;
import javax.swing.*;
public class Jprogress extends JFrame (
// creation of the frame
static JFrame frame;
static JProgressBar bar;
public static void main(String() args)
(
// creation of the frame
frame = new JFrame("ProgressBar demo");
// creation of the panel
JPanel panel = new JPanel();
// creation of the progressbar
bar = new JProgressBar();
// setting initial value
bar.setValue(0);
bar.setStringPainted(true);
// adding progressbar
panel.add(bar);
// adding panel
frame.add(panel);
// set the size of the frame
frame.setSize(500, 500);
frame.setVisible(true);
fill();
)
// function needed to increase progress
public static void fill()
(
int j = 0;
try (
while (j <= 100) (
// set text accoring to the level to which the bar is filled
if (j > 30 && j < 70)
bar.setString("wait for few soconds");
else if (j > 70)
bar.setString("almost done loading");
else
bar.setString("loading initiated");
// filling of the menu bar
bar.setValue(j + 10);
// delaying the thread
Thread.sleep(3000);
j += 20;
)
)
catch (Exception e) (
)
)
)

Resultado:

Conclusão

Assim, podemos concluir que a barra de progresso é o principal elemento da interface do usuário, necessário principalmente para fornecer feedback ao usuário desejado. O usuário geralmente não interage com a barra de progresso. A barra JProgress geralmente é mostrada sempre que o aplicativo fica ocupado, e também é uma indicação para o usuário de que o aplicativo está executando a tarefa e não está congelado.

Artigos recomendados

Este é um guia para o exemplo JProgressBar. Aqui discutimos os construtores, métodos de JProgressBar, juntamente com os exemplos e implementação de código. Você também pode consultar os seguintes artigos para saber mais -

  1. Junta-se ao Hive
  2. O que é uma colméia?
  3. Arquitetura do Hive
  4. Função Hive
  5. Os 6 principais tipos de junções no MySQL com exemplos
  6. Os 5 principais tipos de Boostrap com código de exemplo
  7. Como criar uma ProgressBar no JavaFX?