Imagens jpeg em aplicação SWING

6 respostas
Alchemist

pessoal uma pergunta bem simples,

Eu tenho uma aplicaçã em swing, nela eu tenho um diretorio assim “/view/img”

img = imagens da minha aplicação, esta tudo empacotado em um.jar

quando eu rodo o meu .jar as imagens da minha aplicação não aparecem…

1º Eu n posso colocar imagens dentro do .jar ?
2º Como posso solucionar este problema ?

6 Respostas

N

Pode colocar as imagens no .jar sim!!

vc tem certeza de que o caminho está certo?

não deve estar aparecendo pq vc deve estar chamando o caminho errado da imagem.

qual caminho vc ta colocando?

Alchemist

a classe que chama a imagem esta neste diretorio

SRC
||
View–Dentro de View tem a Pasta IMG
– a classe que chama a imagem esta dentro de view.

estou chamando assim
view/img/icoFechar.jpg

N

Que tipo de imagem vc esta usando?

seu usei o ImageIcon com o seguinte comando e deu certo!

new ImageIcon(getClass().getResource("/view/img/icoFechar.jpg "));

Alchemist

hum vou tentar deste jeito ai !!

Estou fazendo a chamada assim

jbFechar.setIcon(new ImageIcon("src/view/img/icoFechar.jpg"));
Alchemist

deste seu modo da um erro

Onde eu estou errando ?

ViniGodoy
Alchemist:
hum vou tentar deste jeito ai !!

Estou fazendo a chamada assim

jbFechar.setIcon(new ImageIcon("src/view/img/icoFechar.jpg"));

Esse construtor procura a imagem no sistema de arquivos. Para procurar um recurso que esteja no seu classpath (independente se está no sistema de arquivos ou no .jar) use o getResource(), como o colega já demonstrou. Entretanto observe os seguintes detalhes:

1. O arquivo deve estar no seu classpath. E o endereço é relativo a esse classpath (provavelmente não vai existir o /src)
2. O .jar é case-sensitive, mesmo que o Windows não seja. imagem.gif é diferente de imagem.GIF;
3. Caso o arquivo não seja encontrado, o getResource retorna null, ao invés de lançar uma exceção. Quem vai acabar lançando a exceção é o ImageIcon, dizendo que a imagem não pode ser nula.

Criado 21 de julho de 2009
Ultima resposta 21 de jul. de 2009
Respostas 6
Participantes 3