JavaFX oferece vários widgets para o desenvolvimento de interfaces de usuário atraentes. Dois desses widgets são a ProgressBar e o ProgressIndicator, que serão tratados em detalhes nesta orientação. Esses dois componentes ajudam a representar visualmente o progresso de um determinado processo, o que é especialmente útil para aplicações como downloads de arquivos ou processos de instalação. A seguir, você aprenderá como implementar esses elementos em uma aplicação e conectá-los.
Principais descobertas
- A ProgressBar exibe o progresso como uma barra.
- O ProgressIndicator visualiza o progresso como um círculo.
- Ambos os widgets podem ser atualizados dinamicamente com o uso de Change Listeners.
Guia passo a passo
Primeiro, precisamos garantir que escolhemos um layout apropriado para nossa aplicação. Para isso, usaremos um GridPane, que permite uma organização clara.
Passo 1: Inicialize os elementos básicos
Primeiro, você deve criar o GridPane para definir a estrutura da sua interface. Você só precisará desse componente para dispor a ProgressBar, o ProgressIndicator e o Slider.

Passo 2: Crie o Slider
A seguir, adicionaremos o Slider, que permite definir o valor de progresso. O Slider será configurado com valores mínimos e máximos. Defina o valor mínimo como 0 e o valor máximo como 100 para criar um intervalo significativo para sua aplicação.

Passo 3: Implemente a ProgressBar
Agora vem o próximo passo, onde você instanciará a ProgressBar. Defina o valor inicial como 0, para que a ProgressBar comece vazia. Você pode fazer isso usando o método new ProgressBar().
Passo 4: Adicione o ProgressIndicator
Semelhante à ProgressBar, você também precisa criar o ProgressIndicator. Certifique-se de que este também esteja configurado com um valor inicial de 0, para garantir que ele comece sincronizado com a ProgressBar.
Passo 5: Conecte o Slider com Listeners
Agora a parte interessante, pois queremos que a ProgressBar e o ProgressIndicator sejam atualizados dinamicamente quando o Slider for movido. Isso é alcançado adicionando um Change Listener que será executado assim que o valor do Slider for alterado. Aqui, você pode converter o valor do Slider para o intervalo de 0 a 1 para a ProgressBar.
Passo 6: Atualize a ProgressBar e o ProgressIndicator
No Change Listener, agora você deve definir o novo valor para a ProgressBar e o ProgressIndicator. Note que o valor para a ProgressBar deve estar entre 0 e 1. É útil dividir o valor do Slider por 100 aqui.

Passo 7: Adicione os elementos ao GridPane
Agora você precisa adicionar a ProgressBar, o ProgressIndicator e o Slider ao seu GridPane. Aqui, é importante especificar a posição correta (valores de coluna e linha) para cada elemento, para que eles sejam exibidos corretamente no layout.

Passo 8: Teste sua aplicação
Depois que todos os componentes foram adicionados, é hora de executar seu programa. Quando você mover o Slider, deve ser claramente visível como a ProgressBar e o ProgressIndicator são atualizados de acordo. Isso dá ao usuário um feedback claro sobre o progresso de um processo.

Resumo – Entendimento e aplicação de ProgressBar e ProgressIndicator em JavaFX
Nesta orientação, foi explicado como implementar efetivamente a ProgressBar e o ProgressIndicator em uma aplicação JavaFX e como conectá-los. Você aprendeu como usar um Slider para representar visualmente o progresso e como as duas indicações de progresso podem ser atualizadas dinamicamente.
Perguntas frequentes
Como posso estilizar a ProgressBar em minha aplicação?Você pode usar os atributos de estilo em JavaFX para personalizar a aparência da sua ProgressBar.
O ProgressIndicator funciona também sem o Slider?Sim, o ProgressIndicator pode ser usado independentemente do Slider para representar o progresso em diferentes processos.
Como posso definir o progresso programaticamente?Você pode alterar o progresso usando o método setProgress(double) da ProgressBar e do ProgressIndicator.