Trocar ponto por vírgula em uma JTable  XML
Índice dos Fóruns » Java Avançado
Autor Mensagem
silasyudi
HelloWorld

Membro desde: 31/12/2011 12:43:44
Mensagens: 11
Offline

Procurei em muitos lugares mas nada do pouco que encontrei satisfez minha dúvida:

Tenho uma JTable com as notas dos alunos. As três colunas a ser preenchidas mais a coluna com a média são do tipo float.
Graças a Deus está tudo funcionando normalmente, mas o que eu quero é aceitar vírgulas no lugar de ponto.

Eu sei usar NumberFormat, DecimalFormat e também replace(".",","), etc...
O problema é que não estou conseguindo associar isso à tabela.

É bom e gosto que estas colunas estejam em float, pois a tabela automaticamente rejeita qualquer caractere diferente de dígitos e ponto, impedindo o usuário de terminar a edição caso coloque algum caractere diferente desses, mas gostaria de fazer a tabela permitir vírgula para a casa decimal.

Abaixo a parte do setValueAt e getValueAt:

Leozin
JWizard
[Avatar]

Membro desde: 18/06/2005 21:01:26
Mensagens: 2310
Localização: São Paulo/SP
Offline

e se você ao invés de usar um getMedia() direto. por que não cria um método "getMediaFormatada()" ou algo do gênero?

a implementação poderia ser assim


ou seja, onde tu tens o código



tu podes colocar assim:



dessa maneira, notas como 9.5 vão aparecer como 9,5. Caso tu queiras colocar 9,50, basta definir o seguinte método:


http://www.leozin.com.br/blog
[ICQ]
silasyudi
HelloWorld

Membro desde: 31/12/2011 12:43:44
Mensagens: 11
Offline

Leozin, me ajudou muito, melhorou a minha tabela, mas ainda não satisfez a minha principal dúvida, pois uma tabela com célula em float.class impede que o usuário utilize vírgula na hora de escrever sobre a tabela. Após ser escrita, a tabela troca o ponto pela vírgula com essa implementação sugerida, mas o usuário ainda não pode escrever com vírgula.

Alguém sabe como permitir isso?
Leozin
JWizard
[Avatar]

Membro desde: 18/06/2005 21:01:26
Mensagens: 2310
Localização: São Paulo/SP
Offline

E se você colocar como String a tua tabela e, na hora de fazer os devidos cálculos, fazer um parse do valor, será que não dá certo?

http://www.leozin.com.br/blog
[ICQ]
silasyudi
HelloWorld

Membro desde: 31/12/2011 12:43:44
Mensagens: 11
Offline

Desculpe a demora em responder, pois estive fora uns dias...

Acabei fazendo com String mesmo e pegando a exceção NumberFormatException.



Obrigado pelas dicas.

This message was edited 1 time. Last update was at 16/01/2012 09:31:06

 
Índice dos Fóruns » Java Avançado
Ir para:   
Powered by JForum 2.1.8 © JForum Team