Código:
Aclaracion: dp_Escritorio es la variable tipo JDesktopPane ya inicializada y agragada al JFrameprivate void formWindowOpened(java.awt.event.WindowEvent evt) { JLabel lbl_Fondo = new JLabel(); dp_Escritorio.add(lbl_Fondo); lbl_Fondo.setSize(dp_Escritorio.getSize()); ImageIcon imagenFondo = new ImageIcon(GUI_Principal.class.getResource("Wallpaper.jpg")); ImageIcon imagenFondoRedimensionado = new ImageIcon(imagenFondo.getImage().getScaledInstance(lbl_Fondo.getWidth(), lbl_Fondo.getHeight(), java.awt.Image.SCALE_SMOOTH)); lbl_Fondo.setIcon(imagenFondoRedimensionado); }
Todo parece q funciona bien, pero entre tanto probar, me di cuenta que algunas veces de iniciar la aplicacion una y otra vez, algunas veces no se redimensiona y otras si, muy raro realmente. Luego de llenar de breakpoints mi proyecto, al parecer no actualiza el tamaño real del JDektop y por eso le asigna un valor erroneo.
Tengo q aclarar que el JFrame que contiene mi JDesktopPane aparece inicialmente con un tamaño fijo y luego se maximiza con setExtendedState(MAXIMIZED_BOTH); en el constructor del JFrame.
Nose porque este comportamiento, ya probé mil soluciones posibles y sigue haciendo lo mismo, algunas veces se redimensiona bien la imagen y otras queda con el tamaño "viejo" y el JDektopPAne maximizado, osea queda la imagen muy descolocada.
Un dato curioso que noté, esto solo ocurre en Linux, en Windows probé iniciar muchisimas veces, y siempre lo redimensiona bien.
Pienso que es algo del Swing, pero ya nose mas que probar, cualquier idea o ayuda será muy agradecida.
Un saludo a todos!