Habilitando e desabilitando o Look and Feel

8 respostas
L

Eai pessoal,

Estou com um problema para desabilitar o look and feel em uma interface que estou desenvolvendo...
A ideia é a seguinte: o programa deve ter 2 interfaces.. e uma delas deve ser um look and fell... A interface deve ser alterada ao clicar em um botão... então ate agora tenho o seguinte:

private int nInterface=0; ...
ActionListener mudaInterface = new ActionListener() {
			public void actionPerformed(ActionEvent arg0) {
				if (nInterface==0) {
					try {
						janelaPrincipal.dispose();
						UIManager.setLookAndFeel(new NapkinLookAndFeel());
						
						new Principal().janelaPrincipal();
						
					} catch (UnsupportedLookAndFeelException e) {

						e.printStackTrace();
					} 
					nInterface=1;

				}
				
				else {
					
				
					nInterface=0;

Há alguma funcionalidade do look and feel para que ele seja 'desativado' (por falta de palavra melhor)?

valeu gente![code]

8 Respostas

Ivan_Alves

é so retornar o look and feel padrão do java que é

UIManager.setLookAndFeel(UIManager.getCrossPlatformLookAndFeelClassName());
//adiciona look and feel ao componente no caso o objeto frame principal
SwingUtilities.updateComponentTreeUI(janelaPrincipal);

ou também retorna para o look and feel padrão do Sistema Operacional que fica + ou - assim

UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
//adiciona look and feel ao componente no caso o objeto frame principal
SwingUtilities.updateComponentTreeUI(janelaPrincipal);

Geralmente deixa isso para uma classe separada e depois apenas chamo o metodo com o look and feel especifico e mando o componente que recebe o look and feel.

flw

L

Aonde esta o …ClassName()); é pra eu colocar no nome da minha classe certo?!

Não esta funcionando >.<

adrianoms

leenno:
Aonde esta o …ClassName()); é pra eu colocar no nome da minha classe certo?!

Não esta funcionando >.<


vc fez esse import aqui, geralmente a IDE avisa

uma dica é descobrir de forma dinanica os LaF , tem o Windows e Gtk que dependem de sistema para sistema sem contar que no futuro podem vim pre instalados outros Look and feel um exemplo disso o LaF nimbus do Java 1.6u10 em diante, que nem uma das minhas aplicaçoes de 2007 hoje o listão

Map<String,String> lista = new HashMap<String, String>();
        
        // pena que pega apenas os temas da JVM e não os das libs externas do projeto
        for (LookAndFeelInfo info : UIManager.getInstalledLookAndFeels()) {
            lista.put( info.getName(), info.getClassName() );
            System.out.println("nome do tema " + info.getName() );
            System.out.println("classe do tema " + info.getClassName() );
        }
carlinhoscomp

Galera,

estou na procura de algum look and feel que seja diferente do padrão java.
gostaria que a aplicação teria a mesma cara em qualquer Sistema Operacional.
Alguem conhece um layout bacana e Free??

valeu

Ivan_Alves

leenno:
Aonde esta o …ClassName()); é pra eu colocar no nome da minha classe certo?!

Não esta funcionando >.<

Não isso não será alterado apenas adicione o import citado acima e coloque a referencia da sua classe Swing no lugar de ‘janelaPrincipal’

adrianoms

carlinhoscomp:
Galera,

estou na procura de algum look and feel que seja diferente do padrão java.
gostaria que a aplicação teria a mesma cara em qualquer Sistema Operacional.
Alguem conhece um layout bacana e Free??

valeu

http://www.jtattoo.net/
tem uns 15 temas

duduribeiro

carlinhoscomp:
Galera,

estou na procura de algum look and feel que seja diferente do padrão java.
gostaria que a aplicação teria a mesma cara em qualquer Sistema Operacional.
Alguem conhece um layout bacana e Free??

valeu

eu curto o substance
https://substance.dev.java.net/

carlinhoscomp

adrianoms:
carlinhoscomp:
Galera,

estou na procura de algum look and feel que seja diferente do padrão java.
gostaria que a aplicação teria a mesma cara em qualquer Sistema Operacional.
Alguem conhece um layout bacana e Free??

valeu

http://www.jtattoo.net/
tem uns 15 temas

valeu adrianoms
era o que eu queria mesmo
valeu!!!

Criado 27 de maio de 2011
Ultima resposta 30 de mai. de 2011
Respostas 8
Participantes 5