Casas decimais em jtextfield

Boa noite, amigos!

Gostaria de mais uma “frescura” pra terminar meu aplicativo em NetBeans, minha cabeça já tá saindo fumaça.

Tenho um jTextField valor, e gostaria que ao digitar o valor, já aparecessem duas casas decimais.

Digitou: 10
Apareceu: 10,00

Achei um exemplo no guj, mas tô errando na última linha:

NumberFormat nf = NumberFormat.getInstance(); nf.setMinimumFractionDigits(2); jTValor.setText(xxxxxxxxxx); // Não sei como terminar :(

Espero que possam me ajudar. Obrigado.

Acredito que o mais próximo do que você deseja na API padrão é a classe javax.swing.JFormattedTextField.

Se não servir, você deve tentar o OpenSwing antes de tentar fazer tudo na mão.

Depois faz um post com o resultado.

O JFormattedTextField já deve dar conta do recado.

Boa noite, pessoal!

Continuo não conseguindo. Certamente estou insistindo em algum erro.

Vejam a alteração que fiz:

String v = null; NumberFormat nf = NumberFormat.getInstance(); nf.setMinimumFractionDigits(2); jTValor.setText(v);
Não dá mais erro de compilação, mas meu aplicativo continua não recebendo automaticamente as casas decimais.

Por que será?

Abraço a todos!

[quote=evandro.santos]Acredito que o mais próximo do que você deseja na API padrão é a classe javax.swing.JFormattedTextField.

Se não servir, você deve tentar o OpenSwing antes de tentar fazer tudo na mão.

Depois faz um post com o resultado.[/quote]

tenta esse ae 1° e ver se da certo

Um exemplo:

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.text.DecimalFormat;
import java.text.ParseException;

import javax.swing.JButton;
import javax.swing.JFormattedTextField;
import javax.swing.JPanel;

public class FormattedTextFieldTest {

	private static final DecimalFormat FORMAT = new DecimalFormat("0.00");

	private static JPanel getPanel() {
		JPanel panel = new JPanel();
		final JFormattedTextField field = new JFormattedTextField(FORMAT);
		field.setValue(0);
		field.setColumns(10);
		JButton button = new JButton("Imprime");
		button.addActionListener(new ActionListener() {
			@Override
			public void actionPerformed(ActionEvent e) {
				try {
					double value = FORMAT.parse(field.getText()).doubleValue();
					System.out.println(value);
				} catch (ParseException e1) {
					e1.printStackTrace();
				}
			}
		});
		panel.add(field);
		panel.add(button);
		return panel;
	}

}

Adicione o painel gerado por getPanel em uma janela qualquer e veja o resultado.