Imagem de fundo!

12 respostas
AnDrOiDe

bom to tentando colokar imagem de fundo no meu programa, tentei varias vezes mas nd ,pesquisei no google ajudo um poco !!

só queria umas dicas ou exemplos!!

valeu !!

Ja aproveitando como posso deixar um campo apenas receber letras??

12 Respostas

ViniGodoy

Se seu programa for em desktop, você pode baixar esse painel:
http://www.guj.com.br/posts/list/56248.java#295271

E para limitar o número de letras, leia esse tutorial:
http://www.guj.com.br/article.show.logic?id=29

Pode baixar a classe já implementada aqui:
http://www.guj.com.br/posts/list/55106.java#289522

lina

Oi,

Você pode setar um setContentPane.

Ex:
frame.setContentPane(this.CreateContentPane());

Método CreateContentPane():

public 
	Container		CreateContentPane() 
	{
	        //
		// Criação do painel.
		//
		JPanel 
		contentPane		= 	new JPanel(new BorderLayout());
	        
		//
		// Carrega a imagem.
		//
		desktop			=	new JDesktopPane()
		{	
			Image 
			im		= 	(
							new ImageIcon("C:\Temp\Foto.jpg")
						).getImage();			
			
			public 
			void		paintComponent(Graphics g)
			{        
				g.drawImage(im,0,0,this);				
			}
		};
	        
		//
		// Cria o painel OPACO.
		//
		contentPane.setOpaque(true);
		
		//
		// Adiciona ao JDesktopPane.
		//		
		contentPane.add(desktop);
	         
	        //
	        // Retorna o painel.
	        //
	        return contentPane;
	}

Tchauzin!

AnDrOiDe

thanks vini e lina !!

bom eu usei assim não se esta certo !!

package teste;

import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;

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


public class Imagemfundo extends JFrame implements ActionListener {   
    /**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	private BufferedImage imagem;   
    public Imagemfundo() throws IOException {   
        JPanel teste = new JPanel();   
        setLayout(null);   
        add(teste);   
                imagem = ImageIO.read(new File("Desktop\logoProduto.gift"));//Falta try/catch
           
        setVisible(true);   
           
    }   
       
    public JPanel criaContentPane()   
    {       
        final JPanel contentPane = new JPanel(){   
        /**
			 * 
			 */
			private static final long serialVersionUID = 1L;

		public void paintComponent(Graphics g){   
        super.paintComponent(g);   
        Graphics2D g2d = (Graphics2D) g.create();   
        g2d.drawImage(imagem,0,0,imagem.getWidth(),imagem.getHeight(), contentPane);   
        g2d.dispose(); 
        
		}
		
        return contentPane;     
    }     
           
  
    @Override   
    public void actionPerformed(ActionEvent e) {   
           
    }
  
}
AnDrOiDe

olha como eu fiz!! :?:

lina

Oi,

Apresenta algum erro ?

Tchauzin!

AnDrOiDe

não , na hr de rodar o programa a tela não aprece no fundo!!

lina

Oi,

A extensão é .gift ou gif ???

Tchauzin!

AnDrOiDe

é "gif " mas msm assim não foi tentei agorinha ^^

lina

Oi,

Você tem que fazer como passei…

Pelo que pude perceber, o método criaContentPane nem está sendo chamado…

Tchauzin!

AnDrOiDe

deu certo agora ,

mas tenhu outro problema tenho um botão salvar que tem a função de mostrar a mensagem com imagem mas na hr que cliko nop batão nd aparece!!

segue :

package teste;

import java.awt.Color;
import java.awt.Component;
import javax.swing.ImageIcon;
import javax.swing.JLabel;
import javax.swing.JOptionPane;


/** 
 * 
 * */
public class Mensagem {
    
    
    //Icones
    public static final int MSG_ICONE_INFORMACAO = 1;
    
    //botão
    public static final int MSG_BOTAO_SALVAR = 1;
    
    
    
    
    //variavel de armazenamento do icone
    private ImageIcon i;
    
    //array de botões
    private Object[] bt;
    
    //retorna o botao clicado
    private int botaoClicado;
    
    public Mensagem(Component origem, String cabecalho, String mensagem,  int botao, int icone) {
        ImageIcon ic = exibeIcone(icone);
        Object op[] = exibeBotao(botao);
        JLabel msg = new JLabel(mensagem);
        
        msg.setBackground(new Color(215, 215, 215));
        
        msg.setFont(new java.awt.Font("Trebuchet MS-PLAIN", 1, 11));
        botaoClicado = JOptionPane.showOptionDialog(origem,
                msg,
                cabecalho,
                JOptionPane.YES_NO_OPTION,
                JOptionPane.QUESTION_MESSAGE,
                ic,
                op,
                op[0]);
    }
    
    private ImageIcon exibeIcone(int tipoIcone){
        switch(tipoIcone){
        case 1:
            i = new ImageIcon(getClass().getResource("/images/informacao.png"));
            break;
       
        }
        return i;
    }
    
    private Object[] exibeBotao(int tipoBotao){
        bt = new Object[tipoBotao];
        switch(tipoBotao){
        case 1:
            bt[0] = "salvar";
            break;
        
        }
        return bt;
    }
    
    public int getBotaoClicado() {
        return botaoClicado;
    }
}
lina

Oi,

Não consegui encontrar a ação para este botão…

Tchauzin!

AnDrOiDe

sabe o que eu to tentando fazer eu tenhu um button chamado salvar , quando clikar nele aparecera uma menasgem e a imagem junto

salvo com sucesso e a imagem tbm !!

achu ki fiz merda nesse aii !

Criado 4 de fevereiro de 2010
Ultima resposta 5 de fev. de 2010
Respostas 12
Participantes 3