Pergunta

Como você adicionar de zero padding para um JSpinner
Desde o spinner cria o próprio JFormattedTextField, eu não posso simplesmente passar o formato para o construtor JFormattedTextField.
não há uma maneira de definir a formatação em um JFormattedTextField existente?

O que eu quero: valor = 37, editor = "0037"

UPDATE:
Eu tentei isso como sugerido:

JSpinner mySpinner = new JSpinner();  
mySpinner.setEditor(  
    new JSpinner.NumberEditor(mySpinner, "####"));  

e o resultado há nenhuma mudança em tudo para a apresentação dos dados do rotadores. Ele parece ser uma solução razoável; Alguém já tentou isso com sucesso para que eu possa ter a certeza que é apenas esquisito algo em meu próprio aplicativo?

Foi útil?

Solução

Você pode definir o editor -se, assim:

// minimum of four digits
mySpinner.setEditor(new JSpinner.NumberEditor(mySpinner, "0000"));

"0000" é uma string DecimalFormat especificando quatro dígitos, com zeros como necessário; "####" especifica quatro dígitos, mas não de zero-pad.

tampas A DecimalFormat documentação API formatação de cordas com mais detalhes.

Outras dicas

Referindo-se às javadocs, JSpinner tem um setEditor (JComponent) método . Usar isso para definir o seu costume JFormattedTextField, com seu formato personalizado.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top