elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  Imagen en JFrame
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Imagen en JFrame  (Leído 2,171 veces)
Shell Root
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.723


<3


Ver Perfil WWW
Imagen en JFrame
« en: 15 Mayo 2013, 22:24 pm »

Como hago para ponerle una imagen de fondo a un JFrame? He visto algunos ejemplos pero usan un código muy extenso...


En línea

Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.
visualfree

Desconectado Desconectado

Mensajes: 201


Ver Perfil
Re: Imagen en JFrame
« Respuesta #1 en: 16 Mayo 2013, 23:10 pm »

Código:
import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.IOException;
import java.net.MalformedURLException;
import java.net.URL;

import javax.imageio.ImageIO;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;


public class GuiTestBed extends JPanel
{
    private static final long serialVersionUID = 1L;

    public static void main(String args[])
    {
        JFrame frame = new JFrame("GUI Test Bed 2");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setResizable(false);
        frame.setSize(765,503);
        frame.getContentPane().setBackground(Color.BLUE);
       
        String path = "direccion de tu imagen";
       
        JLabel myLabel = new JLabel();
       
        try
        {
            URL url = new URL(path);
            BufferedImage image = ImageIO.read(url);
            myLabel = new JLabel(new ImageIcon(image));
        }
        catch (MalformedURLException e)
        {
            e.printStackTrace();
        }
        catch (IOException e)
        {
            e.printStackTrace();
        }
               
       
        frame.getContentPane().add(myLabel);
        //frame.getContentPane().add(new GuiTestBed());
        frame.setVisible(true);
    }
   
    public void paint(Graphics g)
    {
        g.setColor(Color.WHITE);
        g.setFont(new Font("Comic Sans Ms", Font.BOLD, 14));
        g.drawString("Timer: 1:04:32" , 550, 260);
        g.drawString("Edu XP : 22223" , 550, 280);
    }
}





En línea

YairMon

Desconectado Desconectado

Mensajes: 15



Ver Perfil
Re: Imagen en JFrame
« Respuesta #2 en: 19 Mayo 2013, 02:02 am »

Mira, yo uso una imagen del tamaño del frame.

Por ejemplo hago un dibujito en tuxPaint (Es como el "paint" de window$) y lo guardo al tamaño que necesito.

Entonces:


Código
  1. import java.awt.Color;
  2. import java.awt.Graphics;
  3.  
  4. import javax.swing.ImageIcon;
  5. import javax.swing.JFrame;
  6. import javax.swing.JPanel;
  7.  
  8.  
  9. public class ImagenFondo extends JPanel{
  10. // imagen de fondo
  11. private ImageIcon fondo;
  12.  
  13. // frame donde va este panel
  14. JFrame frame = new JFrame("Imagen de fondo");
  15.  
  16. public ImagenFondo(){
  17. // cerrar por defecto, tamanio, visibilidad...
  18. frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  19. frame.setSize(400,400);
  20. frame.setVisible(true);
  21. frame.add(this); // agrego este mismo panel
  22.  
  23. // creo el fondo con la ruta de la imagen
  24. fondo = new ImageIcon("img_fondo-PC.png");
  25.  
  26. // coloco la imagen y le envio las graficas y la posicion
  27. fondo.paintIcon(null, getGraphics(), 0, 0);
  28.  
  29.  
  30. }
  31.  
  32. public void paint(Graphics g){
  33. //pongo un color fondo (no sirve para nada si esta la imagen sobre el)
  34. g.setColor(Color.black);
  35. g.fillRect(0, 0, 400, 400);
  36. //cuando no sale el fondo lo coloco aqui (fondo.paintIcon(null, g, 0, 0);)
  37.  
  38.  
  39. }
  40.  
  41. public static void main(String[] args){
  42. new ImagenFondo();
  43. }
  44. }
  45.  

PD: la imgagen que tengo "img_fondo-PC.png" mide 400x400 y la tengo dentro del proyecto fuera de la carpetas "src" y "bin"
« Última modificación: 19 Mayo 2013, 04:19 am por YairMon » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Ayuda con 2 JFrame plz
Java
visualfree 3 5,042 Último mensaje 24 Abril 2009, 05:03 am
por visualfree
JFrame MDI
Java
[GB] 0 3,223 Último mensaje 23 Noviembre 2009, 23:34 pm
por [GB]
JFrame « 1 2 »
Java
nerckos 10 8,583 Último mensaje 8 Mayo 2010, 15:58 pm
por nerckos
Llamar un Jframe
Java
blood_brother 8 12,003 Último mensaje 9 Junio 2010, 08:29 am
por blood_brother
Ayuda con JFrame y Tratamiento de imagen JAVA
Java
UnchainedGold40 7 3,199 Último mensaje 8 Enero 2016, 00:13 am
por 0xFer
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines