Eu tenho um jFrame principal com jMenubar e um jDesktopPane onde são
abertos os jInternalframe que são chamados pelos jMenuItem dos jMenu, e
gostaria que meu aplicativo iniciasse com uma imagem no jDesktopPane.
Será que tem como adicionar uma imagem no jDesktopPane ?
Uma vez que daria outra “cara” para a tela do sistema.
Se alguem souber de algum tutorial que ensine ou puder me dar uma ideia
de como fazer isso ou ainda conhecer outra forma.
Nele eu adicionei uma classe que faz isto para você.
Qualquer dúvida é só falar.
Espero ter ajudado.
laercio
E ae cara valeu pela ajuda, por eu estar iniciando agora em java nao sei muito bem o que cada metodo especifico que voce usou faz,
mas eu entendi o que o metodo faz, mas ainda nao esta dando certo, pois esse erro é mostrado.
O que eu posso estar fazendo de errado ?
linha 32 : image = new ImageIcon(this.getClass().getResource(caminhoImagem));
E em imagem vai o caminho da sua imagem, porém este eh o caminho de uma imagem no CLASSPATH da aplicação, esta imagem deve estar dentro do jar da aplicação.
É desta forma que você está fazendo?
laercio
sim
dentro do projeto tem uma pasta image e dentro dela tem um arquivo image.jpg
cara, vou estuda um pouco mais esse código para saber exatamente o que esta fazendo, eu estou achando meio estranho, mas assim que tentar de tudoooo e não conseguir volto a te enche o saco hehe.
muito obrigado.
root_
Esse codigo ta bem simples, e resolve muito bem esse problema de Imagem de Background no JDesktopPane, pelo menos em meu caso. xD
importjavax.swing.*;importjava.awt.*;importjava.awt.event.*;publicclassBGDesktopPaneextendsJFrame{privatestaticImageimg;privateJDesktopPanedp1;publicBGDesktopPane(){try{img=javax.imageio.ImageIO.read(newjava.net.URL(getClass().getResource("kurumin.jpg"),"kurumin.jpg"));}catch(Exceptione){}[/b]dp1=newJDesktopPane(){publicvoidpaintComponent(Graphicsg){super.paintComponent(g);[b]if(img!=null){g.drawImage(img,0,0,this.getWidth(),this.getHeight(),this);g.drawString("Background Carregado com Sucesso!!!",(this.getWidth()/2),(this.getHeight()/2));}elseg.drawString("Image not found",50,50);/* O repaint e o VAlidade aparentimente n fazem diferença. Caso encontrem algum bom motivo para usa-los, postem, please! xD *///super.repaint();//super.validate();}};addWindowListener(newWindowAdapter(){publicvoidwindowOpened(WindowEventevt){formWindowOpened(evt);}});setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);getContentPane().add(dp1);setSize(img.getWidth(null),img.getHeight(null));setVisible(true);pack();}privatevoidformWindowOpened(WindowEventevt){setLocationRelativeTo(null);setExtendedState(6);}publicstaticvoidmain(String[]args){newBGDesktopPane();}}