Look & feel de swing

Una de las primeras cosas que metí en el código de Oolong fue la selección del look&feel de Swing, porque es muy fácil de hacer y así se puede ir viendo cómo queda la aplicación. Como siempre, las cosas no son tan bonitas como parecen al principio, y si bien es sencillo configurar qué look&feel utilizará la aplicación con unas líneas como las siguientes:

try{

    UIManager.setLookAndFeel(

            UIManager.getSystemLookAndFeelClassName());

}

catch(Exception ex){

    UIManager.setLookAndFeel(

            UIManager.getCrossPlatformLookAndFeelClassName());

}

decidir qué look&feel utilizar finalmente y pulir los detalles es más complicado (como siempre que se intentan pulir los detalles en Swing). En mi caso, ahora mismo utilizo el look&feel nativo siempre que esté disponible. Si no hay ninguno disponible o no está definido, se utiliza Metal, que es feísimo.

Otra solución es utilizar algún look&feel desarrollado por terceros como Substance, que es el que más me convence. Esto garantizaría que la aplicación se vería igual en todas las plataformas, pero añade un peso considerable a la aplicación que ya de base ocupa más de 1MB (por incluir el framework Apache Felix).

Ahora mismo tengo pendiente arreglar un problemilla con Oolong que ocurre desde que añadí el widget del termómetro deprisa y corriendo. Hay un pequeño jaleo con este tema de los looks&feels. La aplicación debería aparecer siempre con apariencia GTK (en Linux), pero ahora según que casos aparece con look Metal. Ya le echaré un ojo.

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: