En JavaFX, la personalización visual de la interfaz de usuario se logra mediante el uso de hojas de estilo en cascada (CSS). Esta tecnología permite separar la estructura de la aplicación de su diseño visual, ofreciendo una flexibilidad similar a la que encontramos en el desarrollo web moderno.

Fundamentos del estilizado en JavaFX
Para aplicar estilos de manera efectiva en una aplicación JavaFX, es necesario contar con una comprensión básica de CSS. Por defecto, todas las aplicaciones utilizan el estilo definido en el archivo denominado modena.css. Este archivo actúa como la hoja de estilos base que se aplica automáticamente al iniciar cualquier proyecto de JavaFX.
Si deseas analizar cómo están definidos los estilos estándar, puedes acceder al archivo jfxrt.jar descomprimiéndolo o abriéndolo como si fuera un archivo zip; allí encontrarás el contenido completo de modena.css.
Integración de CSS en el entorno de desarrollo
Para aplicar cambios visuales y crear temas personalizados, como un DarkTheme inspirado en el diseño Metro, es necesario vincular tus archivos CSS a la escena de tu aplicación:
- Abre el archivo PersonEditDialog.fxml utilizando Scene Builder.
- Selecciona el componente raíz, en este caso el BorderPane, desde la sección Hierarchy.
- Para elementos específicos, como el botón OK, puedes configurar su comportamiento desde la vista Properties, seleccionando la opción Default Button.

Aplicación de estilos a los componentes
Al aplicar una hoja de estilos personalizada, observarás cambios inmediatos en la interfaz. Por ejemplo, al definir clases como .table-view o .button en tu CSS, estas sobrescribirán o complementarán las reglas del archivo modena.css original.
Para modificar paneles y etiquetas específicas:
- Abre el archivo PersonOverview.fxml en Scene Builder.
- Dirígete a la vista Properties y asigna background como la clase de estilo para el panel deseado.
- Ajusta las propiedades de las etiquetas (labels) para asegurar una consistencia visual; en muchos casos, es necesario estandarizar su tamaño para mantener la alineación.
Gestión de recursos gráficos
Además del color y el diseño, el uso de iconos contribuye a una interfaz profesional. Un sitio recomendado para obtener iconos gratuitos es Icon Finder.
Para organizar estos recursos dentro de tu proyecto, sigue esta estructura recomendada:
| Directorio | Descripción |
|---|---|
| /resources | Carpeta raíz para archivos estáticos del proyecto. |
| /resources/images | Subcarpeta dedicada exclusivamente al almacenamiento de iconos e imágenes. |
Una vez creada la estructura, coloca el icono elegido dentro de la carpeta images para poder hacer referencia a él desde tu CSS o directamente en el archivo FXML.