Cómo cambiar el icono de la barra de título de una ventana (icono de la aplicación) en el kit de herramientas de Java AWT

Cómo cambiar el icono de la barra de título de una ventana (icono de la aplicación) en el kit de herramientas de Java AWT

La personalización de tu aplicación es esencial para crear una sensación de confianza para tu usuario. Uno de esos pequeños detalles es el uso de un ícono, para dejar al menos la impresión de que realmente estás trabajando con dedicación en la aplicación. En este artículo, te mostraremos cómo puedes cambiar rápidamente el ícono de tu aplicación con código en Java AWT Toolkit.

Lo único que necesitará es una imagen para usar como icono para tu aplicación, si te falta imaginación o si deseas realizar una prueba rápida, puedes descargar un icono aleatorio de este sitio web. Una vez que tengas un ícono para usar, simplemente sigue la siguiente lógica:

// Crear una instancia de un frame
Frame ventana = new Frame();

// Crea una instancia de la clase Image a partir de la imágen que quieres usar como ícono
Image icono = Toolkit.getDefaultToolkit().getImage("C:\\algun-directorio\\icono.png");  

// Define el icono
ventana.setIconImage(icono);

Necesitarás una instancia de un Frame que permita la personalización del icono, luego crea una instancia de una Imagen con el Kit de herramientas predeterminado de Java AWT desde una ruta local (ten en cuenta que si el archivo está dentro de los recursos de tu proyecto, puedes usar una ruta relativa o unirla con la ruta actual de la aplicación). El método getImage del kit de herramientas devuelve una imagen que obtiene datos de píxeles del archivo especificado, cuyo formato puede ser GIF, JPEG o PNG. Finalmente, llame al setIconImagemétodo desde el marco y pase como primer argumento la imagen instanciada.

Nota

El formato recomendado es el PNG que permite la transparencia en su ícono para que se vea mejor en cualquier pantalla.

Ejemplo de contexto de aplicación

El siguiente código representa la lógica mencionada durante la inicialización de un Frame dentro de un contexto de aplicación estructurado:

package sandbox;

import java.awt.*;  

public class Sandbox {
    
    Sandbox(){
        // Crear una instancia de un frame
        Frame window = new Frame();
        
        // Crea una instancia de la clase Image a partir de la imágen que quieres usar como ícono
        Image icon = Toolkit.getDefaultToolkit().getImage("C:\\some-directory\\icon.png");  
        // Define el icono
        window.setIconImage(icon);
        
        // Otras opciones del frame ...
        window.setLayout(null);
        window.setSize(400,400); 
        window.setVisible(true);
    }   
    
    /**
     * Inicializar aplicación
     * 
     * @param args 
     */
    public static void main(String[] args) {
        Sandbox app = new Sandbox();
    }
}

Que te diviertas !

Esto podría ser de tu interes

Conviertete en un programador más sociable