Cambia el Skin de tu aplicación Java

Hola!! Seguramente este post le gustará a los programadores en Java. Me imagino que han buscado como cambiar la interfaz gráfica de su aplicación Java. Pues bueno, en esta entrada les explicaré un  poco como hacerlo mediante una librería llamada Substance Look and Feel. Empecemos.

  • Lo primero que debemos hacer es descargar la librería Substance 4.3 (descargar aquí), la cual pesa al menos 1.75Mb.
  • Una vez descargada la librería, en NetBeans la agregamos a nuestro proyecto. Buscando la ubicación donde se encuentra la librería y agregando el archivo .jar
  • Al terminar de agregar la librería vamos al código. Dicho código lo escribiremos en el método‘public static void main(String args[])’ del frame al cual deseamos cambiar el Skin.

Les comento que para éste proyecto utilicé NetBeans 6.9.1, jdk 6 update 22 y la versión 4.3 de Substance. Además usé el Skin “org.jvnet.substance.skin.BusinessBlackSteelSkin” y el resultado fue éste:

Sin embargo, además del Skin anterior existen muchos más. Todos ellos muy variados y coloridos, como los siguientes:

Acá les dejo una lista de Skins para ser utilizados con la función SubstanceLookAndFeel.setSkin(), que recibe como parámetro un String, por lo tanto dichos Skins deben ser tratados como tal, es decir, entre comillas dobles(” “). Así sólo deben cambiar el parámetro para usar el Skin deseado. (Esta lista sólo funciona para la versión 4.3 de Substance)

  • org.jvnet.substance.skin.AutumnSkin
  • org.jvnet.substance.skin.BusinessBlackSteelSkin
  • org.jvnet.substance.skin.BusinessBlueSteelSkin
  • org.jvnet.substance.skin.BusinessSkin
  • org.jvnet.substance.skin.CremeCoffeeSkin
  • org.jvnet.substance.skin.CremeSkin
  • org.jvnet.substance.skin.EmeraldDuskSkin
  • org.jvnet.substance.skin.FieldOfWheatSkin
  • org.jvnet.substance.skin.FindingNemoSkin
  • org.jvnet.substance.skin.GreenMagicSkin
  • org.jvnet.substance.skin.MagmaSkin
  • org.jvnet.substance.skin.MangoSkin
  • org.jvnet.substance.skin.MistAquaSkin
  • org.jvnet.substance.skin.ModerateSkin
  • org.jvnet.substance.skin.NebulaBrickWallSkin
  • org.jvnet.substance.skin.NebulaSkin
  • org.jvnet.substance.skin.OfficeBlue2007Skin
  • org.jvnet.substance.skin.OfficeSilver2007Skin
  • org.jvnet.substance.skin.RavenGraphiteGlassSkin
  • org.jvnet.substance.skin.RavenGraphiteSkin
  • org.jvnet.substance.skin.RavenSkin
  • org.jvnet.substance.skin.SaharaSkin

Además de cambiar el Skin, Substance permite agregarle un tema al frame mediante la función SubstanceLookAndFeel.setCurrentTheme(), la cual puede recibir como parámetros la siguiente lista de temas(siempre como String). Antes de ponerle un tema a un Jframe, éste debe tener un Skin ya aplicado. Lista de temas:

  • org.jvnet.substance.theme.SubstanceAquaTheme
  • org.jvnet.substance.theme.SubstanceBarbyPinkTheme
  • org.jvnet.substance.theme.SubstanceBottleGreenTheme
  • org.jvnet.substance.theme.SubstanceBrownTheme
  • org.jvnet.substance.theme.SubstanceCharcoalTheme
  • org.jvnet.substance.theme.SubstanceCremeTheme
  • org.jvnet.substance.theme.SubstanceDarkVioletTheme
  • org.jvnet.substance.theme.SubstanceDesertSandTheme
  • org.jvnet.substance.theme.SubstanceEbonyTheme
  • org.jvnet.substance.theme.SubstanceJadeForestTheme
  • org.jvnet.substance.theme.SubstanceLightAquaTheme
  • org.jvnet.substance.theme.SubstanceLimeGreenTheme
  • org.jvnet.substance.theme.SubstanceNegatedTheme
  • org.jvnet.substance.theme.SubstanceOliveTheme
  • org.jvnet.substance.theme.SubstanceOrangeTheme
  • org.jvnet.substance.theme.SubstancePurpleTheme
  • org.jvnet.substance.theme.SubstanceRaspberryTheme
  • org.jvnet.substance.theme.SubstanceSaturatedTheme
  • org.jvnet.substance.theme.SubstanceSepiaTheme
  • org.jvnet.substance.theme.SubstanceSteelBlueTheme
  • org.jvnet.substance.theme.SubstanceSunGlareTheme
  • org.jvnet.substance.theme.SubstanceSunsetTheme
  • org.jvnet.substance.theme.SubstanceTerracottaTheme

A nuestra aplicación también le podemos agregar una Watermark o Marca de agua. Lo hacemos con la función setCurrentWatermark(), pero antes el frame debe tener un Skin(puede tener un tema). setCurrentWatermark() tambien recibe como parámetro un String, el cual puede ser cada uno de los siguientes:

  • org.jvnet.substance.watermark. SubstanceBubblesWatermark
  • org.jvnet.substance.watermark. SubstanceBinaryWatermark
  • org.jvnet.substance.watermark. SubstanceCopperplateEngravingWatermark
  • org.jvnet.substance.watermark. SubstanceCrosshatchWatermark
  • org.jvnet.substance.watermark. SubstanceFabricWatermark
  • org.jvnet.substance.watermark. SubstanceGenericNoiseWatermark
  • org.jvnet.substance.watermark. SubstanceImageWatermark
  • org.jvnet.substance.watermark. SubstanceKatakanaWatermark
  • org.jvnet.substance.watermark.SubstanceLatchWatermark
  • org.jvnet.substance.watermark. SubstanceMagneticFieldWatermark
  • org.jvnet.substance.watermark. SubstanceMarbleVeinWatermark
  • org.jvnet.substance.watermark.SubstanceMazeWatermark
  • org.jvnet.substance.watermark. SubstanceMetalWallWatermark
  • org.jvnet.substance.watermark.SubstanceNoneWatermark
  • org.jvnet.substance.watermark.SubstanceNullWatermark
  • org.jvnet.substance.watermark. SubstancePlanktonWatermark
  • org.jvnet.substance.watermark. SubstanceStripeWatermark
  • org.jvnet.substance.watermark. SubstanceWoodWatermark

Bien, pues es momento de darle un giro total a la interfaz gráfica de nuestras aplicaciones Java. Ya tenemos las herramientas, sólo nos queda probar Skins, temas y watermarks para saber cuales nos agradan más…. Comenten…

9 pensamientos en “Cambia el Skin de tu aplicación Java

  1. Hola gracias por los ejemplos que has subido realmente mean servido de mucha ayuda, pero me gustarias que dejaras el ejemplo del MP3 Player con el codigo fuente para ver como funsiona la verda seve interezante bueno si no es mucha la molestia de antemanos Gracias

    • Es un poco extraño lo que comentas. No debería suceder nigún problema… Ya lo he probado y simple y sencillamente el JDateChooser adopta la visual del skin aplicado.. No me dio ningún error. No creo que ese sea el causante del problema..

  2. en mi aplicacion uso muchas ventanas debo configurar una por una o puedo aplicarla una sola vez y que se aplique solo en las demas???

    • Solo se aplica un vez amigo. Solo basta configurar la ventana principal de tu aplicacion (la primera que se muestra al ejecutar la aplicacion) y todas las demas heredan el efecto look and feel

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