我有一个问题一直困扰着我好几天。 我正在实现一些应该加载图像的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();
}
行this.ImageLabelGERALMUNDANCAS = new JLabel(new ImageIcon("this.PathToData+"/Results/Outputs/P5/0.png",""));
中加载的图像由行
//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();
似乎一切正常,但它没有加载图像..如果我尝试加载另一个图像它完美的工作所以我认为问题是在线程中创建图像。
有人能帮助我吗?
Ps:我仍然需要使用一些代码,目前我正在尝试一切来完成这项工作,然后我会担心更好的代码
亲切的问候