Olá pessoal,
Em determinado momento preciso que um componente tenha um look and feel (laf) diferente do inicializado na aplicacao. Para isso alterei no construtor da classe que contém este componente, da seguinte forma:
try {
UIManager.setLookAndFeel(
"javax.swing.plaf.metal.MetalLookAndFeel");
SwingUtilities.updateComponentTreeUI(treeObjects);
treeObjects.validate();
} catch (ClassNotFoundException e) {
} catch (InstantiationException e) {
} catch (IllegalAccessException e) {
} catch (UnsupportedLookAndFeelException e) {
}
Porém, após realizar esta alteração, quando é feito outrocomponente.validate() este outro componente também muda para o laf novo, o que eu não desejo.
Será que existe outra forma de se fazer isso?
Também tentei remover o laf do componente da seguinte forma:
UIDefaults def=null;
componente.putClientProperty("Nimbus.Overrides",def);
Porém também não consegui nenhum resultado.
Obs: O laf inicializado é o nimbus, e este componente não pode ser nimbus, pode ser qualquer outro, por exemplo o do windows(default)…
Obrigado.