Imagem como background de um JPanel  XML
Índice dos Fóruns » Interface Gráfica
Autor Mensagem
felixcomputer
JavaTeenager
[Avatar]

Membro desde: 07/06/2006 11:12:19
Mensagens: 171
Localização: Belém - Pa
Offline

Gostaria de saber se é possivel colocar uma imagem como fundo de um JPanel, eu naum quero saber como inserir imagens, mas se é possivel colocar componentes (JTextField, JLabel) e por conseguinte diminuir a opacidade da imagem,

Qualquer dica será bem vinda,
Obrigado

Samuel Félix
O temor do Senhor é o principio da sabedoria!
http://sfelixjr.googlepages.com
[Email] [WWW] [MSN]
AislanMan
Debugger

Membro desde: 19/01/2007 10:02:48
Mensagens: 56
Offline

Olá,

Espero que tenhas lhe entendido, mas tenta fazer algo tipo isso:
//***Classe onde estão os painéis, frames, etc......

/*Aqui é apenas um metodo do tipo JPanel que instancia um painél e adiciona a ele a imagem.*/

private JPanel panel() {
JPanel panel = new JPanel();
panel.add(new ImagePanel());
return panel;

}

//*** Imagem **********************************
class ImagePanel extends JPanel{
/** Creates a new instance of ImagePanel */
public ImagePanel() {
image = Icons.getImage(Icons.AGENDA2);
MediaTracker tracker = new MediaTracker(this);
tracker.addImage(image, 0);
try {
tracker.waitForID(0);
} catch (InterruptedException e) {}
}

private Image image;

public void paintComponent(Graphics g) {
super.paintComponent(g);

g.drawImage(image, 0, 0, 200, 600, this);

}
}

Um abraço,
Aislan
ViniGodoy
Moderador
[Avatar]

Membro desde: 11/12/2006 08:22:01
Mensagens: 20580
Localização: Curitiba/PR
Offline

Dá uma olhada aqui:
http://www.guj.com.br/posts/list/56248.java#295271

Deixei uma classe JImagePanel implementada lá que faz exatamente isso. E você ainda pode escolher entre deixar a imagem centralizada, estica-la ou deixa-la lado-a-lado, caso o painel seja maior que a imagem.

Agora, para reduzir a opacidade de uma imagem, use o método:


Onde alpha é um valor entre 0 e 1.0, sendo que 1 representa 100% opaco e 0 totalmente invisível.

O método não altera a imagem original, mas gera uma cópia dela com o alpha aplicado. Essa cópia é retornada pela função.

Aplique isso na imagem, antes de envia-la para o JImagePanel.
[WWW]
felixcomputer
JavaTeenager
[Avatar]

Membro desde: 07/06/2006 11:12:19
Mensagens: 171
Localização: Belém - Pa
Offline

Valeu Vini, essa classe é muito bacana!! Obrigado
Obrigado tbem ao AislanMan

Samuel Félix
O temor do Senhor é o principio da sabedoria!
http://sfelixjr.googlepages.com
[Email] [WWW] [MSN]
 
Índice dos Fóruns » Interface Gráfica
Ir para:   
Powered by JForum 2.1.8 © JForum Team