Pessoal, pode ateh ser uma pergunta besta, mas não sei como definir o plano de fundo da minha janela com uma imagem!
Alguem saberia fazer isso??
Vlw!
Pessoal, pode ateh ser uma pergunta besta, mas não sei como definir o plano de fundo da minha janela com uma imagem!
Alguem saberia fazer isso??
Vlw!
Olha deve te um jeito certo, mais eu geralmente coloco como icon de um jLabel
Dá uma olhada nesse link:
http://www.guj.com.br/posts/list/11002.java
Um amigo meu leu o tópico e conseguiu!

Até mais…
Dá uma olhada nesse link:
http://www.guj.com.br/posts/list/11002.java
Um amigo meu leu o tópico e conseguiu!
Até mais…
Cuidado, além de ser um tópico extremamente antigo, ele mostra um método muitíssimo ineficiente, já que está carregando a imagem toda vez, dentro do paint.
O ideal mesmo é fazer como descrito aqui:
http://www.guj.com.br/posts/list/56248.java#295271
Valeu pela correção ViniGodoy!

Rapaz 
Eu estou mexendo com isso agorinha
public void showImagem(File imagem) throws IOException {
BufferedImage image = ImageIO.read(imagem);
String imageInfo = "Dimenções: "+image.getWidth()+"x"+
image.getHeight()+" Bands: "+
image.getRaster().getNumBands();
ImageIcon icon = new ImageIcon(image);
JLabel imageLabel = new JLabel(icon);
JFrame frame = new JFrame();
frame.setTitle("Mostrando Imagem: " + imagem);
Container contentPane = frame.getContentPane();
contentPane.setLayout(new BorderLayout());
contentPane.add(new JScrollPane(imageLabel),
BorderLayout.CENTER);
contentPane.add(new JLabel(imageInfo),
BorderLayout.SOUTH);
frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
frame.setSize(800,800);
frame.setVisible(true);
}
pega esse código ai …
Gente não conheço muito essa area de inserção de imagens e veio muitos post’s de uma vez só (obrigado), mas meio que me perdi, poderiam ser mais especificos?
Vlw!
Em off agora - Bem que o JAVA devia ter uma maneira mais pratica de fazer isso neh! 
Se você baixar a classe do link que eu postei, simplesmente faça:
JImagePanel pnlImagem = new JImagePanel("c:\imagem.gif");
seuFrame.add(pnlImagem);
Olha qdo eu postei na Main isso
public static void main(String args[]){
JanelaMenuPrincipal jmp = new JanelaMenuPrincipal();
jmp.setVisible(true);
JanelaCadastroDePessoas jcdp = new JanelaCadastroDePessoas();
try {
JImagePanel jip = new JImagePanel("D:\Pisom\JAVA - projetos\GRÁFICA\Projeto\Grafica\TelaFundo.jpg");
jcdp.add(jip);
} catch (IOException ex) {
Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
}
na linha onde eu indico o local da imagem ele da um erro: ilegal escape character!
PS: aparece 4 vezes o ilegal escape character
:wink:
não sei por que, mas qdo eu troquei \ por \ ele funcionou!
mas esta gerando uma exceção
11/03/2010 16:40:30 Classes.Main main
SEVERE: null
javax.imageio.IIOException: Can't create an ImageInputStream!
at javax.imageio.ImageIO.read(ImageIO.java:1280)
at Interface.JImagePanel.<init>(JImagePanel.java:42)
at Interface.JImagePanel.<init>(JImagePanel.java:53)
at Classes.Main.main(Main.java:21)
Agora q eu coloquei a imagem, pois soh tinha definido a pasta (como eu sou esperto aff), para de lançar a excessão, mas a imagem não aparece! 
Se você baixar a classe do link que eu postei, simplesmente faça:
JImagePanel pnlImagem = new JImagePanel("c:\imagem.gif"); seuFrame.add(pnlImagem);
Vini tem como passar uma url pra sua classe? Pq quando gerado um jar ele nao busca o caminho do src.
Basta adicionar um novo construtor. Como o ImageIO também aceita uma URL fica assim:
public JImagePanel(URL imgSrc) throws IOException
{
this(ImageIO.read(imgSrc));
}
Marco tava dando uma olhada na Classe tem um construtor que recebe um BufferedImage ai da pra passar pro Buffered o retorno do metodo ImageIO.read() e passar pro construtor o Buffered =D, funcionou legal aqui. Agora uma pergunta a Imagem esta preenchida no Panel inteiro tem como preencher em menor quantidade? Tipo uma imagem menor? Outra coisa meuFrame.add(imagePanel) nao funciona agora quando coloco meuFrame.setContentPane(imagePanel) funciona…
Bem observado, nem tinha visto. 
Existe a opção CENTER de preenchimento. É isso que você está procurando?
Deve ser algum problema no gerenciador de leiaute. Você está usando o gerenciador padrão do JFrame? Coloque aqui o trecho onde você adiciona os componentes para vermos.
Fiz tudo “aparentemente” correto, mas não gera exceção nem exibe a imagem, será q o tamanho da imagem influencia?
Ainda com problemas nesse JPanel com imagem, alguem tem uma dica sobre como implementar isso?
Vlw!
Mais facil colocar um jPanel e setar a imagem dentro dele…
Ou até mesmo de uma jLabel…
Não sei se é “correto” mas funciona!
=D
gente olha como eu fiz, pq naum ta dando certo?
painel = new javax.swing.JPanel();
try{
JImagePanel imagem = new JImagePanel("D:\TelaFundo.jpg");
painel.add(imagem);
}
catch(IOException ioe){ ioe.printStackTrace();
}
O que ta havendo?
Consegui resolver, mas de outra maneira!
link para o post onde eu consegui!
http://www.guj.com.br/posts/list/202017.java
:D:D:D:D:D