Eu gostaria de saber como se faz para setar uma imagem de fundo em um JPanel, nada vai ser colocado em cima. Eu tinha tentado adicionar a imagem a um JLabel e depois adicionar ao JPanel, mas lá em cima, perto da JMenuBar, a imagem não pega, ficando um esparço que da uma má aparência ao programa. Alguem sabe como fazer?
Oi,
Nesse exemplo, seria um menu com uma imagem de fundo...
//// Criando JFrame. //frame=newJFrame("Stood by Face");//// Chama o método responsavel por criar a barra de Menu. Lembrando que seu menu deve ser instanciado public JMenuBar // CreateMenu()//frame.setJMenuBar(this.CreateMenu());//// Chama o método responsavel por criar a imagem de fundo.//frame.setContentPane(this.CreateContentPane());
No qual ira chamar esse método que o menino falou ali em cima...
/* * Método responsavel por criar a imagem de fundo. */publicContainerCreateContentPane(){//// Criação do painel.//JPanelcontentPane=newJPanel(newBorderLayout());//// Carrega a imagem.//desktop=newJDesktopPane(){Imageim=(newImageIcon("C:\\Lina\\imagem.jpg")).getImage();//// Definindo a posição da imagem.// publicvoidpaintComponent(Graphicsg){g.drawImage(im,0,0,this);}};//// Cria o painel OPACO.//contentPane.setOpaque(true);//// Adiciona ao JDesktopPane.// contentPane.add(desktop);//// Retorna o painel.//returncontentPane;}
bom.. é isso..
Tchauzin!
ViniGodoy
Você pode colocar esse painel no fundo do seu frame. E ele suporta orientação lado-a-lado, esticado ou centralizado, como o desktop do Windows!
dm_thiago
Valeu ai pela ajuda pessoal. Acabei usando a classe do ViniGodoy, usou muito bem a concepção de reusabilidade e criou uma classe genérica que serve para qualquer caso que se queira usar uma imagem de fundo.