Comenzando con un tema un poco más difícil te mostrare un excelente código para poder poner cualquier tipo de imagen de fondo (Gif,JPG,PNG,etc..).
Introducción:
En si su lógica es bastante simple, a cualquier contenedor que se le pueda añadir un fondo se le puede añadir una imagen gracias a algo llamado ClassPatch. Gracias a esto podemos con un simple
.setBackground(); añadir el fondo que deseemos a cualquier contenedor (JPanel...).
Video Tutorial:
Míralo en HD- Puedes descargar el Source Aquí
- Vamos a Crear un Nuevo Proyecto (Preferiblemente en NetBeans) y lo llamamos imagenesDeFondo. //Desmarca la casilla de Crear una clase principal.
- Vamos a Crear 3 Paquetes llamados:
Interfaz
Multimedia
Componentes - En "Componentes", creamos una clase llamada imagenFondo y en ella pones el siguiente código.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 | package Componentes; import java.awt.Graphics; import java.awt.Image; import java.awt.Toolkit; import java.net.URL; import javax.swing.JDesktopPane; import javax.swing.JPanel; /** * Visita: https://Yolo-mavster.blogspot.com * @author Mavster */ public class imagenFondo extends JPanel{ //Puedes Cambiar el JPanel por cualquier comoponente. (Que acepte fondo). private Image fondo; @Override public void paintComponent(Graphics g){ int height,width; //Sera Automatico y se acoplara a el JDesktopPane (En este caso) height=this.getSize().height;// Alto width=this.getSize().width;// Largo super.paintComponent(g); if(fondo!=null){ g.drawImage(fondo, 0, 0, width,height,this); } } public void setBackgroung(String fondoImg){ Image temp; this.setOpaque(false); URL direccion=ClassLoader.getSystemResource(fondoImg); temp=Toolkit.getDefaultToolkit().createImage(direccion); this.fondo=temp; this.repaint(); } } |
- En el paquete de Multimedia pondrás una imagen de cualquier tipo de extension (Preferiblemente PNG,JPG o GIF)
Para poner una imagen en el paquete de Multimedia: - Busca la Imagen.
- Selecciónala y presiona Ctrl + C
- Selecciona el paquete "Multimedia" y presiona Ctrl + V
- Ahora en el paquete de "Interfaz" Creamos un nuevo clase de Extension JFrame llamada Interfaz
- Compilamos el programa (presionando la Brocha junto al Martillo) y nos dirigimos a Design.
- Nos dirigimos a la paleta de añadir componentes (Botones, labels...) del lado derecho, damos clic derecho sobre cualquier sección y seleccionamos Manage
- Creamos una nueva categoría y la nombramos Mavster la seleccionamos y damos al botón que dice añadir de proyecto.
- Buscamos nuestro proyecto (En este caso este) y le damos abrir, nos aparecerán dos nombres y escogemos Imagen Fondo. (Damos siguiente y aceptar)
- Luego en la paleta de los componentes en la categoria Mavster Arrastramos el que diga imagenFondo como si fuera un JPanel
- El JPanel anterior lo re-nombramos como "pnlFondo"
- En el archivo de Interfaz pondremos la siguiente linea al final del constructor de la clase Interfaz:
| pnlMavs.setBackgroung("Multimedia/fondo.gif"); |
Donde "pnlMavs" es nuestro contenedor, "Multimedia" nuestro paquete, "Fondo.gif" nuestra imagen en este caso de extension GIF. - Listo, ejecuta y Disfruta!.
Links de Descargas:
Clave:https://yolo-mavster.blogspot.com
Comments
Post a Comment