Bem, sou nova no Java e estou começando a aprender sobre interfaces e tals.
E estou com bastante dúvida sobre como faço pra colocar imagens no meu programa.
Já olhei em vários livros e fórum, mas ainda assim não consegui compreender.
Ah, uso o eclipse como IDE, então, como faço pra colocar as imagens no programa usando o eclipse, e fazer com que elas apareçam ao executar o .Jar.
Bem, você está trabalhando com Swing, provavelmente, certo?
Como deseja utilizar a imagem? Em um componente (botão, por exemplo)? Ou como "plano de fundo da janela?
Sim, estou usando Swing, e tinha pensado em usar a imagem como plano de fundo.
Certo, vou passar alguns links, mas te aviso que não é muito fácil não…
Dei uma olhada rápida, este parece ser o mais interessante
http://wiki.portugal-a-programar.org/java:jpanel_imagem_fundo
Este exemplo é mais simples http://javafree.uol.com.br/topic-10871-imagem-dentro-de-um-Jpanel.html
É, percebi que é bem difícil mesmo.
Mas, vou tentando.
Obrigada pela ajuda.
Vou dar uma outra olhada, se eu achar algo mais simples posto aqui.
Obrigada! =]
Então, não tenho conhecimentos neste assunto mas encontrei um codigo bem simples neste link:
http://www.arquivodecodigos.net/dicas/java-definir-uma-imagem-de-fundo-marca-dagua-para-um-jtextarea-521.html
e adaptei para um JPanel. Criei uma tela de Login bem simples como exemplo:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class ImagemFundo extends JFrame{
public ImagemFundo(){
super("Login");
Container container = getContentPane();
container.setLayout(new BorderLayout());
//aqui vc deve adicionar a imagem que deseja mostrar no JPanel
final ImageIcon imageIcon = new ImageIcon("imagem.jpg");
JPanel painel = new JPanel(new FlowLayout()){
Image image = imageIcon.getImage();
Image grayImage = GrayFilter.createDisabledImage(image);
{
setOpaque(false);
}
public void paint(Graphics g) {
g.drawImage(grayImage, 0, 0, this);
super.paint(g);
}
};
painel.add(new JLabel("Login:"));
painel.add(new JTextField(8));
painel.add(new JLabel("Senha:"));
painel.add(new JPasswordField(8));
painel.add(new JButton("Logar"));
container.add(painel, BorderLayout.CENTER);
setSize(140,180);
setResizable(false);
setDefaultCloseOperation(EXIT_ON_CLOSE);
}
public static void main(String[] args){
new ImagemFundo().setVisible(true);
}
}
Espero que ajude!
Uma forma simples de se colocar uma imagem de fundo no JPanel, é usar a classe JImagePanel criada pelo ViniGodoy. Agora no projeto Towel.