Como criar um controle giratório em Java
UMA fiandeira é um campo de texto que você pode criar em Java que tem duas pequenas setas ao lado dele. O usuário pode clicar em um desses setas para aumentar ou diminuir o valor do campo de texto. Normalmente, o campo de texto contém um número, então clicar em um dos incrementos pequenas setas ou diminui o número. Você também pode criar um controle giratório que exibe os dados obtidos de uma matriz ou uma coleção.
Para criar um controle giratório, você usa o JSpinner classe. Confira os construtores e métodos abaixo. Note-se que o segundo construtor aceita um objecto do tipo SpinnerModel como um parâmetro. Esta tabela também mostra construtores para duas classes que implementam a SpinnerModel interface.
Construtor | Descrição |
---|---|
JSpinner () | Cria um controle giratório padrão. O spinner padrão permite que o userchoose um número inteiro que tem um valor inicial de 0 e nenhum mínimo ou valores máximos. |
JSlider (modelo SpinnerModel) | Cria um spinner usando o objeto SpinnerModel especificado. |
Método | Descrição |
vazio addChangeListener (ChangeListenerlistener) | adiciona um ChangeListener para ouvir eventos forchange. |
int getValue () | Obtém o valor. |
vazio setToolTipText (ext String) | Define o texto dica de ferramenta que é exibido se o mouse do usuário reststhe sobre o controle deslizante por alguns momentos. |
Construtores de Classes SpinnerModel | Descrição |
SpinnerNumberModel (init int, int min, intmax, passo int) | Cria um modelo giratório número que permite que os valores de usuário selectinteger variando de min no máximo, com um incremento de passo. O valor inicial é definido para o init. |
SpinnerNumberModel (duplo max, doublestep) | Cria um modelo giratório número que permite que os doublevalues Selecionar usuário que variam de min no máximo, com um incremento de passo. O valor inicial é definido para o init. |
SpinnerListModel (Object [] valores) | Cria um modelo giratório lista usando os valores da matriz de thespecified. |
SpinerListModel (coleção List) | Cria um modelo giratório lista usando os valores da coleção thespecified. A coleção deve implementar a interface List. |
Você pode criar um spinner padrão que permite que os selecionados valores inteiros de usuários, como este:
JSpinner girador = new JSpinner () -
Este Spinner começa com um valor de 0 e aumenta ou diminui o valor pela 1 cada vez que o usuário clica em uma das setas do girador. Você pode recuperar o valor atual do girador, a qualquer momento, como este:
valor int = spinner.getValue () -
Para a maioria dos spinners, você quer usar o segundo construtor, que requer que você primeiro criar um objeto que implementa o SpinnerModel interface.
Há construtores para duas classes que implementam fiandeira. O primeiro, SpinnerNumberModel, cria controles giratórios numéricos que permitem controlar o valor inicial, os valores mínimos e máximos, e o valor do passo que é adicionado ou subtraído cada vez que o usuário clica em uma das setas.
Veja como você pode usar o SpinnerNumberModel para criar o primeiro botão rotativo que aceita números inteiros de 1 a 12, começando com 1:
horas JSpinner = new JSpinner (nova SpinnerNumberModel (1, 1, 12, 1)) -
Aqui está o código para o segundo botão rotativo, que permite que os números utilizador escolher a partir de 0 até 59:
JSpinner minutos = new JSpinner (nova SpinnerNumberModel (0, 0, 59, 1)) -
Ao utilizar o SpinnerListModel classe, você também pode construir um controle giratório que permite aos usuários selecionar valores de uma lista. O construtor para esta classe aceita um array ou um objeto que implementa o Lista interface. o ArrayList classe implementa essa interface, o que significa que você pode usar SpinnerListModel para criar um controle giratório que permite aos usuários selecionar itens de um ArrayList objeto.
Aqui está o código para o terceiro botão rotativo, que permite que o usuário especifique da manhã ou p.m .:
String [] ampmString = { "am", "pm"} - ampm = new JSpinner (nova SpinnerListModel (ampmString)) -
Neste exemplo, a SpinnerListModel usa uma matriz de strings com dois elementos: sou e PM.