Ola galera GUJ.
Bom gente, meu problema é bastante comum, eu li muitos tópicos relacionado ao assunto antes de resolver escrever esse aqui, alguns são bastante semelhantes ao meu, mas a solução que sugeriram não me ajudou.
Então vamos ao problema: No Eclipse eu criei um JLabel e adicionei uma imagem a ele com a intenção que o JLabel fosse a imagem de fundo do meu programa. Para uso apenas no Eclipse eu uso o codigo:labelImagem = new JLabel(new ImageIcon("E:\Java\workspace\semNome\src\imagens\science1.jpg"));
getClass().getClassLoader().getResource("science1.jpg")
getClass().getClassLoader().getResourceAsStream("science1.jpg");
Como faço para meu arquivo jar carregar a imagem de fundo do JLabel corretamente?
meu código:public class GUJ extends JFrame implements ActionListener {
private JPanel painel;
private JLabel labelImagem;
public GUJ() {
tela();
}
public static void main(String[] args) {
new GUJ();
}
public void tela(){
// "E:\Java\workspace\semNome\src\imagens\science1.jpg"
// "/semNome/src/imagens/science1.jpg"
// getClass().getClassLoader().getResource("science1.jpg")
// getClass().getClassLoader().getResourceAsStream("science1.jpg");
painel = new JPanel();
labelImagem = new JLabel(new ImageIcon("E:\Java\workspace\semNome\src\imagens\science1.jpg"));
painel.setLayout(null);
painel.add(labelImagem);
labelImagem.setBounds(1, 1, 300, 300);
this.pack();
this.getContentPane().add(painel);
this.setSize(308, 330);
Dimension tamanhoTela = Toolkit.getDefaultToolkit().getScreenSize();
this.setLocation((tamanhoTela.width - this.getWidth()) / 2,
(tamanhoTela.height - this.getHeight()) / 2);
this.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
this.setVisible(true);
}
public void actionPerformed(ActionEvent arg0) {
}
}