无法在JLabel-Java、Swing中加载ImageIcon

无法在JLabel-Java、Swing中加载ImageIcon,java,swing,jlabel,imageicon,Java,Swing,Jlabel,Imageicon,我有一个问题已经让我厌烦了好几天了。 我正在实现一些swing接口,用于加载映像: 当我按下按钮时,它会触发一个调用以下方法的事件: private void GetDataPanelGeral() { ArrayList<String> Files = new ArrayList<>(); java.util.Date selectedDate = (java.util.Date) this.JDatePickerImpl_GERAL_MUDANÇAS

我有一个问题已经让我厌烦了好几天了。 我正在实现一些swing接口,用于加载映像:

当我按下按钮时,它会触发一个调用以下方法的事件:

private void GetDataPanelGeral()
{
    ArrayList<String> Files = new ArrayList<>();

    java.util.Date selectedDate = (java.util.Date) this.JDatePickerImpl_GERAL_MUDANÇAS_datePicker_START.getModel().getValue();
    java.sql.Date sqlDateINICIO = new java.sql.Date(selectedDate.getTime());

    selectedDate = (java.util.Date) this.JDatePickerImpl_GERAL_MUDANÇAS_datePicker_END.getModel().getValue();
    java.sql.Date sqlDateFIM = new java.sql.Date(selectedDate.getTime());


    //CALL MODULE 5
    RunningLoop loop = null;
    Thread t = new Thread
    (       
        loop = new RunningLoop(50000,this.StringDBName,this.StringDBDriver,
        this.StringDBUser,this.StringDBPass,this.PathToData,
        sqlDateINICIO.toString(),
        sqlDateFIM.toString(),
        true)
    );
    t.start();
    loop.StopLooping();


    this.ImageLabelGERALMUNDANCAS.revalidate();  
    this.ImageLabelGERALMUNDANCAS.repaint();


    this.ImageLabelGERALMUNDANCAS = new JLabel(new ImageIcon("this.PathToData+"/Results/Outputs/P5/0.png",""));
    this.ImageLabelGERALMUNDANCAS.repaint();


    JPanel Aggregator = new JPanel();
    Aggregator.add(this.ImageLabelGERALMUNDANCAS);
    Aggregator.setBackground(this.color);

    //this.Aggregatorr.add(this.ImageLabelGERALMUNDANCAS);
    this.JPanel_TABGeral.remove(1);
    this.JPanel_TABGeral.add(Aggregator,1);
    this.JPanel_TABGeral.revalidate();
    this.JPanel_TABGeral.repaint();
    Aggregator.revalidate();
    Aggregator.repaint();

}
看起来一切正常,但它不加载图像。。如果我尝试加载另一个图像,它可以完美地工作,因此我认为问题在于线程中图像的创建

有人能帮我吗

Ps:我仍然需要在一些代码中工作,目前我正在尽一切努力来完成这项工作,然后我会担心更好的代码


亲切问候

您创建了一个新的
ImageLabelGERALMUNDANCAS实例
,但它从未添加到任何内容中,因此它从未显示在屏幕上。该标签添加到JPanel Agregator,即添加到JPanel_选项卡中。我认为这个问题一定与这个形象的创造有关。。当我尝试加载其他内容时,它可能还没有准备好。。因为如果我尝试添加一些其他图像,它会正常工作考虑提供一个演示您的问题的示例,这将减少猜测工作并产生更好的响应。我将避免直接使用
ImageIcon
加载图像,而改为使用
ImageIO.read
,至少会,如果无法加载图像,则引发
IOException
。另外,我很确定
“this.PathToData+”/Results/Outputs/P5/0.png“
不会编译…这与MadProgrammer所说的一致。创建
URL
,甚至可能将图像文件设置为类路径资源,并以这种方式加载
URL
(如果失败,它也会生成
异常
)并使用
ImageIO.read()
//CALL MODULE 5
    RunningLoop loop = null;
    Thread t = new Thread
    (       
        loop = new RunningLoop(50000,this.StringDBName,this.StringDBDriver,
        this.StringDBUser,this.StringDBPass,this.PathToData,
        sqlDateINICIO.toString(),
        sqlDateFIM.toString(),
        true)
    );
    t.start();
    loop.StopLooping();