Mudar idioma de aplicação Swing  XML
Índice dos Fóruns » Interface Gráfica
Autor Mensagem
jcvijr
JavaChild
[Avatar]

Membro desde: 15/04/2005 17:10:06
Mensagens: 111
Offline

Olá,

Gostaria de saber se existe um jeito fácil de alterar o idioma de uma aplicação Swing. Por exemplo, quando chamo um JOptionPane, aparece "Sim" e "Não" ao invés de "Yes" e "No". No JFileChooser, já aparece "Abrir" e "Cancelar" ao invés de "Open" e "Cancel"...

Pensei em usar um Locale pt-br, mas não sei onde

Agradeço se puderem ajudar.

Ah, Java é uma ilha da Indonésia - um designer intrometido
[WWW] [MSN]
ViniGodoy
Moderador
[Avatar]

Membro desde: 11/12/2006 08:22:01
Mensagens: 20580
Localização: Curitiba/PR
Offline

Já tentou o método estático setDefault da classe Locale?

Antes disso, você terá que ver se o locale em questão está disponível. No caso, existe o método getDefaultLocale(), também estático, na mesma classe.
[WWW]
arm.jr
Java Ninja

Membro desde: 12/03/2005 19:25:05
Mensagens: 294
Offline

Ai um exemplo.



JFileChooser


JUNIOR
-------------
ATLHON XP 2600++ / 1GB DDR / HD 80G / ADSL 800 / GRAV DVD LG 4163 / FX 5200 128MB /
[WWW] [MSN]
jcvijr
JavaChild
[Avatar]

Membro desde: 15/04/2005 17:10:06
Mensagens: 111
Offline

Parece que o setDefault do Locale não funcionou:



O que está acima deve estar errado... como associar o Locale ao meu Frame?

Alguma idéia?

Ah, Java é uma ilha da Indonésia - um designer intrometido
[WWW] [MSN]
fabiel
JavaEvangelist
[Avatar]

Membro desde: 26/05/2006 14:38:01
Mensagens: 373
Localização: Floripa
Offline

Ja pensou em usar a classe locale

Bacharelado em Ciências da Computação.
JavaEE/RIA developer
www.fabielprestes.com.br
Espero ter ajudado !
abcs
jcvijr
JavaChild
[Avatar]

Membro desde: 15/04/2005 17:10:06
Mensagens: 111
Offline

Err... sim, mas não funcionou.

Mas parece que o método do arm.jr deu certo, apesar de resolver apenas o problema do JOptionPane. Só que em uma aplicação desktop geralmente também temos JFileChoosers, JColorChoosers, etc... Pensei que existia alguma forma de setar o idioma sem ter que configurar cada componente da aplicação no braço

Ah, Java é uma ilha da Indonésia - um designer intrometido
[WWW] [MSN]
RenataFA
Virtual Machine Man
[Avatar]

Membro desde: 24/08/2006 08:15:10
Mensagens: 698
Offline

Bem amigo, qto aos botões é como o colega já explicou que nós fazemos aqui. Vc mencionou que tem mais Dialogs como FileChooser, etc,,, que também precisam ser traduzidos. Bem, abaixo está o método que uso pra traduzir meus FileChooser. Se vc descobrir como traduzir os demais que possui nos mande por favor. Eu acho até que deve ser parecido com o que estou te passando.

Eu apenas chamo este método quando inicio meu sistema.



[]'s

[]'s, Renata
[Email]
jcvijr
JavaChild
[Avatar]

Membro desde: 15/04/2005 17:10:06
Mensagens: 111
Offline

Uia... não sabia desse UIManager... vou tentar, valeu.

Ah, Java é uma ilha da Indonésia - um designer intrometido
[WWW] [MSN]
jcvijr
JavaChild
[Avatar]

Membro desde: 15/04/2005 17:10:06
Mensagens: 111
Offline

Dê uma olhada:



E dentro do Frm1 (que estende JFrame), eu instancio um JFileChooser. Não funcionou

Será que é alguma configuração do Eclipse, ou algo a mais que esqueci de setar?

Ah, Java é uma ilha da Indonésia - um designer intrometido
[WWW] [MSN]
RenataFA
Virtual Machine Man
[Avatar]

Membro desde: 24/08/2006 08:15:10
Mensagens: 698
Offline

Bom, veja só como eu faço:



Onde MyFileChooser é minha classe que possui o método de tradução e MinhaClasse é a classe principal do sistema que chama a TelaPrincipal (menu do sistema). Perceba que primeiro eu faço a chamada do método de tradução e só depois eu instancio a primeira tela do sistema.

Boa sorte!

[]'s, Renata
[Email]
jcvijr
JavaChild
[Avatar]

Membro desde: 15/04/2005 17:10:06
Mensagens: 111
Offline

Era isso mesmo renata, eu estava chamando depois de instanciar...

Quanto aos JOptionPanes, fiz uma classe que estende a JOptionPane, e deu certo também. Veja:




Muito obrigado pela sua ajuda.

Ah, Java é uma ilha da Indonésia - um designer intrometido
[WWW] [MSN]
lina
Moderador
[Avatar]

Membro desde: 23/12/2006 21:05:04
Mensagens: 3083
Offline

Funciona tanto para o confirme como para os outros, eu acho..

Você tem que alterar a Key do componente.. trocando por uma nova:



Fazendo isso em seu construtor, vai servir para todas as janelas de mensagem..

Tchauzin!

Você é novo no GUJ? Vai criar um tópico e colar seu código-fonte? Leia aqui antes, por favor!
http://www.guj.com.br/posts/list/50115.java

Se o seu tópico foi respondido e você está satisfeito, segue:
- Pressione o botão <Edit> de seu primeiro post
- Acrescente no final do título a tag [RESOLVIDO]

@gujgirl

http://www.restartfans.hdfree.com.br

Meu blog:

http://www.runthecode.wordpress.com

Tchauzin!
[Email]
 
Índice dos Fóruns » Interface Gráfica
Ir para:   
Powered by JForum 2.1.8 © JForum Team