Java проблема загрузки изображения - PullRequest
0 голосов
/ 26 января 2012

по какой-то причине я не могу загрузить определенные изображения с помощью моей Java-программы.чуть выше этого фрагмента кода у меня есть еще одно изображение, которое отлично работает.

for(int x = 1; x<=7; x++){
        if(additionals[x] != 0){
            rightPanel.add(new JLabel(new ImageIcon("IMAGES/image"+x+".GIF")));
            count++;
        }
    }

изображения сохраняются в папке IMAGES и называются image1.gif, image2.gif и т. д.код просто спросите

Ответы [ 2 ]

2 голосов
/ 26 января 2012
  1. это окна?GIF != gif в противном случае
  2. это работает, если вы удалите условие (additionals[x] != 0)?
  3. достаточно rightPanel достаточно для всех изображений?
1 голос
/ 26 января 2012

Вы уверены, что это:

    if (additionals[0] != 0){
        rightPanel.add(new JLabel(new ImageIcon("IMAGES/ram"+additionals[0]+"gb.gif")));
        count++;
    }
    for(int x = 1; x<=7; x++){
        if (additionals[x] != 0){
            rightPanel.add(new JLabel(new ImageIcon("IMAGES/image"+x+".gif")));
            count++;
        }
    }

не должно быть на самом деле?

    if (additionals[0] != 0){
        rightPanel.add(new JLabel(new ImageIcon("IMAGES/ram"+additionals[0]+"gb.gif")));
        count++;
    }
    for(int x = 1; x<=7; x++){
        if (additionals[x] != 0){
            rightPanel.add(new JLabel(new ImageIcon("IMAGES/image"+ additionals[x]+".gif")));
            count++;
        }
    }

?

Это сделает ваш код более симметричным.В противном случае, выполните printlns перед ошибочной строкой со строкой, которую вы хотите использовать, чтобы ImageIcon удостоверился в ее правильности.

Например:

    for(int x = 1; x<=7; x++){
        if (additionals[x] != 0){
            String imagePath = "IMAGES/image"+x+".gif";
            System.out.println("imagePath = " + imagePath);
            rightPanel.add(new JLabel(new ImageIcon(imagePath)));
            count++;
        }
    }

А затем сравните строкикоторые выводятся с именами файлов и путями.Еще лучше создать новый файл и вывести его полный путь, прежде чем пытаться использовать его для создания нового ImageIcon.

caveat: код не был протестирован.

...