Erro na troca de um label para um icone

2 respostas
J

Saudações,

Estou aprendendo agora e me deparei com um erro que acredito se tratar da posicao absoluta de um icone.
Quando eu faço o teste mostrando uma palavra nao da erro, mas quando eu troco a palavra para o icone aparece a mensagem de erro abaixo:

Exception in thread AWT-EventQueue-0 java.lang.NullPointerException

at javax.swing.ImageIcon.(ImageIcon.java:217)

at telas.TelaLogin.(TelaLogin.java:31)

at telas.TelaLogin$2.run(TelaLogin.java:178)

at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)

at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:756)

at java.awt.EventQueue.access$500(EventQueue.java:97)

at java.awt.EventQueue$3.run(EventQueue.java:709)

at java.awt.EventQueue$3.run(EventQueue.java:703)

at java.security.AccessController.doPrivileged(Native Method)

at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)

at java.awt.EventQueue.dispatchEvent(EventQueue.java:726)

at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)

at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)

at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)

at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)

at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)

at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

Entao eu acredito que seja referente a posicao do icone nas sub pastas, essa substituicao ocorre na seguinte linha de programação:
LblStatus.setIcon(new javax.swing.ImageIcon(getClass().getResource("icones/database_ok.png")));

A duvida esta em como apontar para este icone utilizando a posicao relativa da pasta do projeto já que este icone esta dentro de uma sub-pasta.

2 Respostas

rodriguesabner

LblStatus.setIcon(new javax.swing.ImageIcon(getClass().getResource("icones/database_ok.png")));

Coloca uma barra antes do icones, assim:

LblStatus.setIcon(new javax.swing.ImageIcon(getClass().getResource("/icones/database_ok.png")));

J

Obrigado pela ajuda, deu certo.

Criado 26 de outubro de 2018
Ultima resposta 29 de out. de 2018
Respostas 2
Participantes 2