Cursos / Informática para Internet / Desenvolvimento Desktop / Aula

arrow_back Aula 09 - Componentes JProgressBar, JSlider e JSpinner

O Componente Controle Deslizante (JSlider)

As Propriedades do Componente Controle Deslizante

Você verá agora algumas propriedades que poderão ser alteradas para uso em uma aplicação:

  • maximum – indica o valor máximo correspondente a barra total do componente. O valor padrão é 100.
  • minimum – representa o valor mínimo do componente, de forma similar a propriedade anterior. O valor padrão é 0.
  • minorTickSpacing – mostra o espaçamento (em números) entre o valor mínimo e o valor máximo do controle. Por exemplo, se você informar o valor 10, a faixa de valores será mostrada de dez em dez. Entretanto, esses valores só serão visíveis se a propriedade paintLabels estiver marcada. Cuidado para não informar um valor muito pequeno, senão eles ficarão muito próximos dificultando a leitura dos números. O valor padrão é 0.
  • orientation – define o sentido do componente. O padrão é o sentido horizontal, contudo ele também pode ser utilizado na vertical.
  • paintTrack – exibe ou não a trilha do controle.
  • paintLabels – mostra os valores definidos nas propriedades majorTickSpacing e minorTickSpacing.
  • paintTicks – mostra os tracinhos verticais referentes aos valores definidos nas propriedades majorTickSpacing e minorTickSpacing.
  • snapToTicks – se esta propriedade estiver marcada só será permitido selecionar os valores predeterminados da faixa, caso contrário, será permitido selecionar qualquer valor intermediário.
  • value – indica o ponto de partida do controle deslizante quando a aplicação for executada. O valor padrão é 50. Isso significa que o marcador do controle será posicionado no centro do controle.

Na seção Outras propriedades, veja também a seguinte propriedade:

  • inverted – essa propriedade inverte o sentido do controle. Caso o componente esteja no sentido horizontal (padrão), com essa propriedade marcada, o controle é feito a partir da direta, e não da esquerda (que é o padrão).

Vejamos agora um exemplo de como utilizar esse componente na prática.

Nesse exemplo, utilizaremos um componente Controle deslizante juntamente com um componente Rótulo, de forma que, quando o controle do componente for arrastado para qualquer um dos lados, o valor atual do controle seja mostrado no rótulo.

  1. Execute o NetBeans e crie um novo projeto (Arquivo à Novo projeto).
  2. Salve projeto com o nome: ControleDeslizante.
  3. Crie um novo Formulário JFrame.
  4. Clique e arraste um componente Controle deslizante para a área do projeto.
  5. Para o intervalo de valores, mantenha os valores padrão das propriedades mínimo e máximo, ou seja, 0 e 100.
  6. Informe o valor 5 para a propriedade minorTickSpacing e 20 para a propriedade majorTickSpacing.
  7. Marque as propriedades paintLabels e paintTicks para mostrar os valores e os tracinhos verticais.
  8. Marque a propriedade snapToTicks para que o controle deslizante fique vinculado apenas aos valores estabelecidos.
  9. Dê um nome para o controle. Por exemplo: cdControle.
  10. Arraste um componente rótulo e posicione-o logo abaixo do controle deslizante. Configure esse componente da forma que você achar mais conveniente (cor, fonte, tamanho etc.).
  11. Dê um nome para esse componente. Por exemplo: lblRotulo.
  12. Confira seu projeto com o mostrado na Figura 6:
Componente controle deslizante com um componente rótulo

Agora que criamos o projeto, vamos ver como criar a parte funcional, ou seja, o evento apropriado para realizar a tarefa a qual foi destinado:

  1. Clique com o botão direito sobre o componente Controle deslizante.
  2. No menu apresentado, selecione: Eventos > Change > stateChange.
  3. Feito isso, será mostrado o código abaixo (Figura 7):
  4. Código referente ao evento do controle deslizante
  5. Dentro desse código, insira as linhas conforme mostra a Figura 8:
  6. Código completado
  7. Esse evento indica que quando o controle for arrastado, o código dentro das chaves será executado da seguinte forma:
    1. Foi criada uma variável inteira chamada rotulo para receber o valor atual (getValue()) do componente cdControle.
    2. Em seguida foi criada uma variável string chamada texto para converter a variável inteira rotulo para string de forma que o componente lblRotulo possa recebê-la.
    3. Finalmente, o valor atual do controle é mostrado no lblRótulo como uma string.
  8. Execute a aplicação e confira o resultado com a Figura 9:
  9. Execução de aplicativo
  10. Deslize o controle para os lados e verifique se o valor mostrado no rótulo é o mesmo do controle.

Versão 5.3 - Todos os Direitos reservados