写真を変更できるコンボボックスを持つシンプルなウィジェットを作りたいです。src/test に 2 つの png 画像があります (.java ファイルのほかに)
プログラムを実行すると、次の例外が発生します。
Exception in thread "main" java.lang.NullPointerException
at javax.swing.ImageIcon.<init>(Unknown Source)
at first.gui.<init>(gui.java:11)
at first.Main.main(Main.java:11)
これは私のコードです:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
public class gui extends JFrame {
JLabel lb = new JLabel();
Icon[] pics = {
new ImageIcon(getClass().getResource("f.png")),
new ImageIcon(getClass().getResource("i.png"))
};
String[] str = {
"f.png", "i.png"
};
JComboBox box = new JComboBox(str);
public gui() {
super("title");
setLayout(new FlowLayout());
box.addItemListener(
new ItemListener() {
public void itemStateChanged(ItemEvent event) {
if (event.getStateChange() == ItemEvent.SELECTED)
lb.setIcon(pics[box.getSelectedIndex()]);
}
});
add(box);
}
}
私はそれを解決するために何をすべきですか?