vertical tipos que manejo gridlayout ejemplos componentes clase borderlayout java swing devtools

tipos - Java Swing: bibliotecas, herramientas, gestores de diseño



swing java ejemplos (7)

¿Qué bibliotecas / herramientas tienes en tu conjunto de herramientas Java Swing?

  • XUL
  • Administradores de diseño
  • Envasadores / Instaladores
  • Libros
  • etc .....

Casi solo uso GridBagLayout para código de producción a menos que la GUI sea tan simple que pueda salirse con la suya con un BorderLayout. A veces busco en otros LayoutManagers, pero nunca encontré realmente la necesidad de cambiar, ya que GridBagLayout puede hacer casi todo lo que necesito.

El instalador que uso para mis cosas es izPack y funciona para mí hasta ahora.

Ha pasado mucho tiempo desde que leí realmente cualquier libro de Swing ahora. Obviamente, el Java Swing uno de O''Reilly es la biblia de facto :) Cuando se trata de libros sobre diseño, tengo muchas recomendaciones, ¿pero podría estar fuera del tema?


Dos bibliotecas útiles relacionadas con Swing:

  1. El Swing Application Framework es un marco ligero que simplifica la creación y el mantenimiento de aplicaciones de escritorio Java de tamaño pequeño a mediano. El marco consiste en una biblioteca de clases Java que admite construcciones para cosas como las siguientes:

    • Recordar el estado entre sesiones.
    • Administración más fácil de las acciones, incluida la ejecución como tareas en segundo plano y la especificación del comportamiento de bloqueo.
    • Gestión de recursos mejorada, incluida la inyección de recursos para propiedades de frijoles.

    Aquí hay un artículo sobre eso. Se ha integrado con Netbeans 6.0 y versiones posteriores.

  2. EventBus es un marco editor-suscriptor orientado a Swing que he encontrado muy útil para actualizar las GUI.


No es realmente una herramienta, pero he estado trabajando en anotar cosas importantes en los JavaDocs para Swing (y varias otras API). Demasiados métodos contienen sorpresas como "no llame a esto si desea una actualización, llame a X en su lugar". Utilizo una herramienta que construí para que mi doctorado accediera a ese tipo de información (destaca las llamadas en el código fuente a métodos que tienen ese tipo de cosas).

En mi humilde opinión, los JavaDocs for swing son difíciles de usar porque combinan información destinada a personas que usan un objeto y personas que subclasan clases existentes.


Netbeans con el editor GUI WYSIWYG . Hace que crear Java 6 Swing sea muy fácil. Subclases los formularios para agregar funcionalidad para asegurar el soporte continuo de la herramienta.

También he usado SwingX para widgets como selectores de fecha y paneles plegables.

Además, siempre hay SwingWorker en el JRE para ejecutar trabajos en segundo plano que actualicen la UI.


Spring Rich Client y JGoodies son la base de las aplicaciones GUI de mi equipo; Spring remoting para conectarse al servidor y Java Web Start para su implementación.


Esto es lo que uso:

  • "Framework" : Swing Application Framework , no hace mucho, pero lo hace bastante bien (si lo usa, puede echarle un vistazo a una presentación que hice el año pasado)
  • JTables : la manipulación de tablas suele ser un problema (muchos códigos repetitivos ...); Generalmente uso GlazedLists que simplifica mucho el trabajo (y aporta muchas mejoras)
  • EventBus : esto fue mencionado en otra respuesta
  • LayoutManager : DesignGridLayout (plug desvergonzado, este es uno de mis proyectos de código abierto)
  • Look & Feel : la sustancia es muy buena en algunas situaciones en las que no desea utilizar el aspecto del sistema
  • Biblioteca de acoplamiento : si su aplicación necesita acoplamiento, encontrará MyDoggy útil (y tiene una API bien escrita). Un problema que tiene es una mala integración con apariencia y sensaciones de terceros (como Sustancia)

Todas estas bibliotecas de arriba son de código abierto.

Además de eso, tengo mi propio conjunto de clases de utilidad que, entre otras cosas, ayudan a integrar la GUI con una biblioteca de Dependency Injection: Tengo un conjunto de utilidades para el contenedor HiveMind (para los pocos desarrolladores que lo conocen y aún lo usan) ), y otro -en preparación, pronto abierto de origen- para Guice .

No he leído ningún libro específico sobre el desarrollo de Swing, pero he usado Swing durante aproximadamente 10 años (sin embargo, no siempre). Por lo tanto, no tengo ninguna recomendación en términos de libros (desafortunadamente, porque admito que este es un punto débil de Swing).

El libro "Filthy Rich Clients" es útil solo si:

  1. sabes swing bien
  2. quieres construir GUIs "sofisticadas"