我正试图在图像处理方面做一个实验.

基本上我有一个图像,由计时器不断更新,我在JLabel中显示该图像.

我的问题是JLabel没有刷新图像.

这是我的计时器代码:

Timer timer = new Timer(200, new ActionListener() {

public void actionPerformed(ActionEvent e) {

count++;

System.out.println("timer");

System.out.println(filename);

ImageIcon icon = new ImageIcon(filename);

label = new JLabel();

label.setIcon(icon);

label.setText(""+count);

panel = new JPanel();

panel.add(label);

frame.getContentPane().removeAll();

frame.getContentPane().add(panel);

frame.repaint();

frame.validate();

try{

FileWriter fstream;

fstream = new FileWriter(filename,true);

BufferedWriter out = new BufferedWriter(fstream);

out.write("text to append");

out.close();

}catch (Exception ex){

System.err.println("Error: " + ex.getMessage());

}

}

});

其中filename是我的图像的路径.

显示图像但JLabel从不刷新我的图像.

我测试了我的代码,如果我在两个不同的图像之间切换,它正在工作……

编辑:

每次创建最后一个图像并使用时间戳重命名时,我都会通过复制解决.

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐