Boa tarde pessoal, bom, estou com um erro que aparentemente é um tanto simples, ao tentar setar um ícone para meu JFrame TelaPrincipal, está dando o seguinte erro
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at sun.awt.SunToolkit.getImageFromHash(SunToolkit.java:725)
at sun.awt.SunToolkit.getImage(SunToolkit.java:759)
at br.com.energymanagement.telas.TelaPrincipal.setIcon(TelaPrincipal.java:537)
at br.com.energymanagement.telas.TelaPrincipal.<init>(TelaPrincipal.java:59)
at br.com.energymanagement.telas.TelaPrincipal$14.run(TelaPrincipal.java:501)
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:76)
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)
Ainda nada, está acontecendo alguma bruxaria no meu código pois não consigo colocar nem uma imagem em um label que da erro, veja o erro que retornou quando fiz do jeito que sugeriu:
C:\Users\david\Documents\NetBeansProjects\EnergyManagement3\src\br\com\energymanagement\telas\TelaPrincipal.java:60: error: unreported exception IOException; must be caught or declared to be thrown
setIcon();
Note: C:\Users\david\Documents\NetBeansProjects\EnergyManagement3\src\br\com\energymanagement\telas\TelaPrincipal.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
1 error
C:\Users\david\Documents\NetBeansProjects\EnergyManagement3\nbproject\build-impl.xml:952: The following error occurred while executing this line:
C:\Users\david\Documents\NetBeansProjects\EnergyManagement3\nbproject\build-impl.xml:269: Compile failed; see the compiler error output for details.
getResource retorna um objeto URL, isso só funciona quando as imagens estão em disco ou na rede, se ele criar um JAR para a plicação, não vai mais conseguir carregar a imagem, por isso recomendei o getResourceAsStream.
Estranho…
Não sou um programador muito experiente, mas testei em vários computadores que tenho aqui, todos apareceram o ícone
Por isso dei o exemplo para o amiguinho, mas não depois que fui ler que ele já tinha solucionado : ]
Mesmo assim obrigado!