Vamos mostrar uma forma de instalar um Skin para ser usado por qualquer programa Java sem precisar ter que adicionar eventos de mudança de Skin dentro do código de cada programa, e sim uma alteração que valerá para todos.
Obtendo e adicionando arquivo look and feel
No diretório ~/ext do JRE iremos criar adicionar todos os arquivos .jar necessários:
C:\Arquivos de programas\Java\jre1.5.0\lib\ext
Em ~/lib/ext podemos adicionar outros arquivos .jar que seriam necessários ser setados no classpath da aplicação. Esses arquivos adicionados, serão adicionados ao seu classpath automaticamente não precisando adicioná-los ao classpath da aplicação.
Agora que sabemos onde deverão ser colocados os arquivos vamos obter um arquivo de Look And Feel no site www.sourceforge.net no seguinte link.
Descompactando o arquivo irá aparecer o liquidlnf.jar que é o look and feel que iremos utilizar neste artigo e deverá ser copiado para o diretório ~/lib/ext.
Editando arquivo de propriedades
No diretório ~/lib do JRE (Java Runtime Edition) iremos criar um arquivo de propriedades que será nomeado de swing.properties:
C:\Arquivos de programas\Java\jre1.5.0\lib
Em seguida com o arquivo do skin em seu devido lugar, vamos editar da seguinte forma o arquivo de propriedades que acabamos de criar:
#arquivo swing.properties
swing.installedlafs = motif,windows,metal,liquid
swing.installedlaf.motif.name = CDE/Motif
swing.installedlaf.motif.class = com.sun.java.swing.plaf.motif.MotifLookAndFeel
swing.installedlaf.windows.name = Windows
swing.installedlaf.windows.class = com.sun.java.swing.plaf.windows.WindowsLookAndFeel
swing.installedlaf.metal.name = Metal
swing.installedlaf.metal.class = javax.swing.plaf.metal.MetalLookAndFeel
swing.installedlaf.liquid.name = Liquid
swing.installedlaf.liquid.class = com.birosoft.liquid.LiquidLookAndFeel
swing.defaultlaf=com.birosoft.liquid.LiquidLookAndFeel
Não sendo necessário reiniciar a máquina, agora está tudo pronto para testar a aparência nova de nossas aplicações Java.
Execute alguma e confira o resultado.
Sintaxe do arquivo swing.properties
Devemos criar uma referência para cada look and feel instalado da seguinte forma:
swing.installedlafs = motif,windows,metal,liquid
Em seguida editaremos os look and feels que terão a seguinte sintaxe:
swing.installedlaf.<referência>.name
Ex.: swing.installedlaf.liquid.name
Agora atribuímos um nome a esse name criado:
swing.installedlaf.liquid.name = <qualquer nome>
Ex.: swing.installedlaf.liquid.name = Liquid
Criaremos agora uma atribuição que receberá o valor da URL do look and feel desejado:
swing.installedlaf.<referência>.class = <URL>
Ex.: swing.installedlaf.liquid.class = com.birosoft.liquid.LiquidLookAndFeel
Definindo o look and feel padrão
Por fim informamos qual será a URL do look and feel padrão para os nossos aplicativos:
swing.defaultlaf=<URL>
Ex.: swing.defaultlaf = com.birosoft.liquid.LiquidLookAndFeel
Para trocar o look and feel, abra o arquivo swing.properties e mude a URL default.
Observações
Dessa forma estamos pré-definindo um look and feel. Desta forma, para trocarmos um look and feel em tempo de execução, o procedimento deverá ser complementado com alterações no código fonte da aplicação, mas isto fica para um próximo artigo.
Um abraço a todos e obrigado pela leitura.
Ewerson Silva
Que programa utilizo para criar o arquivo swing.properties ????
Diogo de Menezes Franco
Você pode usar qualquer programa que edite texto simples, como o Bloco de Notas(Windows), o vim(Linux), ou quaisquer outros do gênero.
David Bentolila
vc definiu ai a classe para o LAF como
com.birosoft.liquid.LiquidLookAndFeel
como sei qual sera a classe??
Luiz Fernando
ao usar o comando "swing.defaultlaf=com.birosoft.liquid.LiquidLookAndFeel", o evento
que se encontra no site da Sun http://java.sun.com/docs/books/tutorial/uiswing/components/table.html
na opção "Sorting and Filtering" não funciona; este evento é muito prático, pois, ele ordena um
jTable ao clicar no título da coluna, mas com a opção com.birosoft.liquid.LiquidLookAndFeel
infelizmente não funciona;
Existe algum segredo?
2001 - iMasters FFPA Informática Ltda - Todos os direitos reservados.