WindowBuilder es uno de los plugins preferidos para desarrollar interfaces gráficas Java en Eclipse. Su interfaz es muy intuitiva y nos permite configurar múltiples líneas de código simplemente con clics. Eso sí, hay que tener en cuenta que a veces, según los cambios que realices en el código a mano, al abrir otra vez la perspectiva WindowBuilder ésta puede quedarse atascada.

WindowBuilder en Eclipse

Instalación

Para instalar WindowBuilder en Eclipse, accedemos a la web oficial de descargas:

http://www.eclipse.org/windowbuilder/download.php

Seleccionamos la versión que corresponde con nuestra versión de Eclipse (en el ejemplo, Mars) y copiamos la URL del repositorio.

Selección de versión en la web de WindowBuilder

En Eclipse vamos a Help → Install New Software, pegamos la URL en el campo “Work with” y pulsamos Add para añadir el nuevo repositorio con el nombre que queramos.

Añadir repositorio en Eclipse

Esperamos a que cargue el repositorio, seleccionamos todos los componentes disponibles y pulsamos Next.

Seleccionar componentes de WindowBuilder

Aceptar términos de licencia

Aceptamos los términos de la licencia y esperamos a que finalice la instalación. Eclipse nos pedirá que lo reiniciemos.

Instalación en progreso

Verificación

Una vez reiniciado Eclipse, podemos comprobar que WindowBuilder está instalado correctamente creando una nueva clase: New → Other → WindowBuilder → Swing Designer → Application Window.

Crear nueva Application Window con WindowBuilder

Le damos un nombre a la clase y pulsamos Finish.

Nombrar la clase de la ventana

En el editor de código aparecerá una pestaña Design junto a la pestaña Source. Al pulsar en Design se abrirá la perspectiva visual de WindowBuilder con la paleta de componentes, el árbol de componentes y el panel de propiedades.

Perspectiva Design de WindowBuilder

Paleta de componentes de WindowBuilder

Aunque el código que genera WindowBuilder puede ser algo aparatoso, siempre podemos editarlo a mano cambiando a la pestaña Source.

Vista Source con el código generado