0 votos
por (20 puntos) en Java

2 Respuestas

0 votos
por (600 puntos)

Hola Marianne pues te recomiendo que hagas lo siguiente, para añadir una imagen a un JFrame en Java tenemos muchísimas opciones, puedes usar un JPanel, JLabel, etc. 

No olvides importar los paquetes swing y awt que se usaran para construir la ventana.

Una vez importada crearas un único campo que será de tipo JFrame y se llamara vent.

Seguidamente en el constructor tendras un único método que será el encargado de crear la ventana y que se llamara algo asi crearVentana.

Ya en el método crearVentana tendras. Tendras una primera línea que sirve para crear la ventana y ponerle nombre (el nombre que aparece en la parte superior de la ventana). En la siguiente línea del método daras tamaño a la ventana, escoges el tamaño de la foto que quieres poner, podrías hacerlo de forma automática pero te recomiendo que lo hagas manualmente por si quisiéras que la ventana fuera mas ancha que la imagen para poner botones a los lados o lo que se te  ocurra despues . posteriormente  en la siguiente línea del método es donde podrass la imagen en el JLabel, con una linea sola añades al contenedor de la ventana un JLabel que a su vez tiene una imagen que conseguirass con new ImageIcon.

enseguida te pongo el código fuente completo para que lo puedas usar. Tambien es importante que en la carpeta donde creas el proyecto tengas una carpeta donde guardes la foto que vas a usar como fondo.

//paquetes que importamos para poder usar elementos gráficos en Java

import javax.swing.*;

import java.awt.*;

public class VentanaConFondo 

{

    private JFrame vent;//variable vent de tipo JFrame

    public VentanaConFondo()

    {

        crearVentana();//método que se encarga de crear la Ventana

    }

    private void crearVentana()

    {

        vent = new JFrame ("Ventana de JuegoSoftware.com con fondo");//nombre que toma 

        la ventana

        vent.setSize(900,592);//tamaño de la ventana, cogemos el tamaño de la imagen que 

        vamos a poner en el JLabel por lo que hemos explicado más arriba

        vent.setContentPane(new JLabel(new ImageIcon("Imagenes/Img1.jpg")));//añade una 

        imagen a un JLabel para que aparezca de fondo de la ventana

        vent.setLocationRelativeTo(null);//ventana centrada en pantalla

        vent.setLayout(null);//para que no acomode los elementos y los podamos poner donde         queramos en caso de que los hubiera

        vent.setResizable(false);//para que no se pueda cambiar de tamaño la ventana

        vent.setVisible(true);//para que la ventana visible

        vent.setDefaultCloseOperation(vent.EXIT_ON_CLOSE);//para que se cierre al salir

    }

}

Listo espero te sirva!!

0 votos
por (600 puntos)

Hola tal vez esto puede ayudarte

Para agregar una imagen de fondo a nuestro JFrame lo que hacemos es reemplazar el contenedor de componentes por defecto por uno propio.

import java.awt.Image;

import javax.swing.JFrame;

public class JFrameConFondo extends JFrame {

    private final JPanelConFondo contenedor = new JPanelConFondo();

    public JFrameConFondo() {

        setContentPane(contenedor);

    }

    public void setImagen(String nombreImagen) {

        contenedor.setImagen(nombreImagen);

    }

    public void setImagen(Image nuevaImagen) {

        contenedor.setImagen(nuevaImagen);

    }

}

Preguntas relacionadas

0 votos
0 respuestas
0 votos
3 respuestas
preguntado por David Delgado (20 puntos) Ene 28, 2016 en HTML
0 votos
2 respuestas
preguntado por ariel (20 puntos) Ene 28, 2016 en HTML
0 votos
3 respuestas
preguntado por gerardo (230 puntos) Jul 19, 2016 en HTML
Bienvenido a Dudas de Programación, donde puedes hacer preguntas y recibir respuestas sobre los problemas más frecuentes de los lenguajes de programación, frameworks de desarrollo y bases de datos que utilices. Foro de Línea de Código

Categorías

...