如何在JLabel中更新ImageIcon?

1 java swing jlabel imageicon

import javax.swing.*;
{

JFrame ShoppingMarket=new JFrame();
{
  ShoppingMarket.add(new JLabel(new ImageIcon("C:\\Users\\admin   \\Desktop\\The Da Vinci Code.jpg")));
  ShoppingMarket.pack();
  ShoppingMarket.setVisible(true);  
}
ShoppingMarket.add(new JLabel(new ImageIcon("C:\\Users\\admin   \\Desktop\\Angels And Demons.jpg")));
ShoppingMarket.pack();
ShoppingMarket.setVisible(true);    
}
Run Code Online (Sandbox Code Playgroud)

关闭第一个窗口时,它不会清除屏幕.所以两张照片都显示在屏幕上.

kih*_*eru 5

而不是向JLabel框架添加新内容,将原始文件存储到封闭类的字段中.然后你可以简单地调用label.setIcon(theNewIcon),我假设该字段被命名label.请参阅相关文档.

  • [ImageIcon.getImage().flush();](http://stackoverflow.com/a/9616521/714968)对于松散地放置在HDD上的资源应该很重要 (2认同)