У меня есть четыре панели, и я хочу добавить изображения на эти панели.
Когда я нажимаю кнопку «Пуск», каждой панели необходимо изменить 4 изображения.
Я делаю тестовую программу для покера.
Изображения помещаются в папку Карты (корень) и называются
1.png, 2.png, 3.png .... 52.png.Как я могу вставить ImageIcon в панели?
Я начинаю программировать на Java, и мой вопрос может звучать глупо. Я встречая NullPointerException
Код:
import javax.swing.ImageIcon;
import javax.swing.JLabel;
import javax.swing.JPanel;
public class Display extends Thread{
private JPanel [] paneli;
private JLabel slika;
public JPanel[] getPaneli() {
return paneli;
}
public void setPaneli(JPanel[] paneli) {
this.paneli = paneli;
}
public JLabel getSlika() {
return slika;
}
public void setSlika(JLabel slika) {
this.slika = slika;
}
public void run(){
JLabel [] labele = new JLabel[4];
for(int i =0; i<paneli.length; i++){
for(int j=0; j<labele.length; j++){
slika.setIcon(new ImageIcon("card\\" + (i+1) + ".png"));
labele[j].add(slika);
paneli[i].add(labele[j]);
}
}
}
}
Вы можете разместить полную трассировку стека, поэтому мы знаем, что линия терпит неудачу? Например, 'paneli' когда-либо инициализируется с помощью' setPaneli'? –
Для примера [http://stackoverflow.com/a/11372350/1057230) дополнительную информацию можно найти на странице [info] (http://stackoverflow.com/tags/embedded-resource/info) 'embedded-resource' :-) –
сначала панель не инициализируется. Это должно означать, что при вызове 'paneli.length' в вашем коде генерируется исключение nullpointer. –