JComboBox, Java SE e Eclipse

1 resposta
W

Pessoal pode me ajudar com este JComboBox e como Fazer o tratamentos das excessões tentei mas não consigo resolver:

HELLO GUYS COULD YOU HELP ME IN THIS JCOMBOBOX:
Exception in thread “main” java.lang.NullPointerException
at java.desktop/javax.swing.ImageIcon.(Unknown Source) at br.com.gui.ControleCombo.(ControleCombo.java:23) at br.com.gui.ControleCombo.main(ControleCombo.java:71)


package br.com.gui;

import java.awt.BorderLayout;

import java.awt.Container;

import java.awt.Font;

import java.awt.event.ItemEvent;

import java.awt.event.ItemListener;
import javax.swing.ImageIcon;

import javax.swing.JComboBox;

import javax.swing.JFrame;

import javax.swing.JLabel;

public class ControleCombo extends JFrame implements ItemListener {

JComboBox combo;

JLabel label;

<strong>ImageIcon[] imagens = {</strong>

new ImageIcon (getClass().getResource("/gui/fotos/na.jpg")),
new ImageIcon (getClass().getResource("/gui/fotos/nb.jpg")),
new ImageIcon (getClass().getResource("/gui/fotos/nc.jpg")),
new ImageIcon (getClass().getResource("/gui/fotos/nd.jpg")),
};

public ControleCombo() {

super (“Album de Fotos”);

Container c = getContentPane();

combo = new JComboBox();

combo.setFont(new Font(Serif, Font.PLAIN, 28));
combo.addItem(M);

combo.addItem(C);

combo.addItem(W);

combo.addItem(F);

combo.addItemListener(this);

c.add(BorderLayout.NORTH, combo);
c.add(BorderLayout.CENTER, label);

label = new JLabel(imagens[1]);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

setSize(300,500);

setVisible(true);
}

public static void main(String[] args) {

// TODO Auto-generated method stub
<strong>new ControleCombo();</strong>

}

<a class="mention" href="/u/override">@Override</a>

public void itemStateChanged(ItemEvent e) {

if(e.getStateChange() == ItemEvent.SELECTED) {

label.setIcon(imagens[combo.getSelectedIndex()]);

}

}

}

WHAT´S WRONG???

1 Resposta

darlan_machado

We used to say that the NPE is a developer exception. It is very common when you are starting to do something related to java development, but, it will become unacceptable while you get some more experience.
Bom, o que está havendo é que você está tentando chamar alguma funcionalidade do objeto que ainda não foi inicializado.
Tente inicializar o objeto que, provavelmente, terá a solução para teu problema.

Criado 4 de janeiro de 2018
Ultima resposta 16 de jan. de 2018
Respostas 1
Participantes 2