Foro de elhacker.net

Programación => Java => Mensaje iniciado por: mapers en 25 Septiembre 2010, 03:25 am



Título: imagen de fondo
Publicado por: mapers en 25 Septiembre 2010, 03:25 am
holas gente estoy usando el netbiens como IDDE ,estoy hacindo una aplicacion ya esta casi terminada ,ahora quisiera wsaber com le cambio el fondo de la ventana sin modificarla ,me refiero a colocar una imagen que puedo bajarla del internet.....


Título: Re: imagen de fondo
Publicado por: josco en 25 Septiembre 2010, 03:33 am
para poner una imagen de fondo debers agregar un panel y en el panel agregar la imagen


Título: Re: imagen de fondo
Publicado por: mapers en 25 Septiembre 2010, 03:36 am
pero justamente ya cree el panel y  ya puse todo encima de el mismo pero esta de  color rojo pero no quiero ese color quiero una imagen como hago para poner la imagen sin modificar.......mi proyecto


Título: Re: imagen de fondo
Publicado por: Leyer en 25 Septiembre 2010, 04:04 am
http://foro.elhacker.net/java/visualizar_imagen_en_jpanel_de_una_ventana_principal-t303780.0.html


Título: Re: imagen de fondo
Publicado por: josco en 25 Septiembre 2010, 17:12 pm
puedes hacer el panel en una clase mira lo que vas a hacer es lo siguiente:


creas un nuevo proyecto y creas una nueva clase con el nombre mipanel en esa clase pones el siguiente codigo:


Código:
import java.awt.Dimension;
import java.awt.Graphics;
import javax.swing.ImageIcon;

/**
 * http://jc-mouse.blogspot.com/
 * @author Mouse
 */
public class mipanel extends javax.swing.JPanel {

    public mipanel(){

        setSize(1000,700);
    }

    @Override
    public void paint(Graphics g){
        Dimension tamanio = getSize();
        ImageIcon imagenFondo = new    ImageIcon(getClass().getResource("/tigrex.jpg"));
        g.drawImage(imagenFondo.getImage(),0,0,tamanio.width, tamanio.height, null);
        setOpaque(false);
        super.paintComponent(g);
}

}

ahora te vas a la carpeta donde tienes guardado el proyecto y buscas la carpeta src y ahi metes la imagen que quieres de fondo, le puedes poner tigrex.jpg ya que asi se llama la imagen del ejemplo que te doy o  se lo puedes cambiar donde dice:

ImageIcon(getClass().getResource("/tigrex.jpg"));

una vez que hagas eso creas un jframe y le das click derecho te vas  events - windows- windows opened, esto te llevara al codigo y le pones el siguiente:

Código:

mipanel p = new mipanel();
        this.add( p , BorderLayout.CENTER);
        p.repaint();

te va a marcar un errorsillo eso es porque falta el import entonces le picas en el foquito del error y le dices que te agregue ese import que falta.

ahora para que el tamano de la imagen y el form sean iguales, en el codigo del jframe te vas al constructor. el constructor es algo asi:

Código:
[code]public Vemtana() {
        initComponents();
        
    }
[/code]

donde vemtana es el nombre que le diste al jframe, bueno ya nadamas le agregas a ese constructor esta linea de codigo:

Código:

setSize(1000,700);


lo cual te deve quedar asi el constructor:
Código:
public Vemtana() {
        initComponents();
        setSize(1000,700);
    }

claro cambiando donde  dice vemtana() por el nombre de tu frame