两天来我试图从文件中加载图像到JPanel
。我不能!加载图像到JPanel不起作用
我用JLabel
和Icon
它的加载没问题,但我需要直接加载图像到JPanel
,这是不可能的?
因为差不多我看到很多这样的相关问题,很多人推荐问问题的人把图像加载到标签中!
这是代码:
public class ReadingImage extends JPanel {
JPanel panel;
JFrame frame;
JPanel secPanel;
private BufferedImage img;
public ReadingImage(String path){
frame = new JFrame();
frame.setVisible(true);
frame.setLocation(300, 300);
frame.setSize(300, 500);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setLayout(new BorderLayout());
secPanel = new JPanel();
secPanel.setVisible(true);
//secPanel.setLayout(new FlowLayout());
secPanel.repaint();
frame.getContentPane().add(secPanel);
try{
FileImageInputStream fi = new FileImageInputStream(new File(path));
//System.out.println(path);
img = ImageIO.read(fi);
this.repaint();
}
catch (IOException io){ io.printStackTrace();}
}
@Override
protected void paintComponent(Graphics g){
super.paintComponents(g);
if (img!=null){
g.drawImage(img, 0, 0, this);
repaint();
}
}
}
它不扔任何异常,但它不是在JPanel
显示图像!
我调整引起的扩展JPanel
并使用另一个JPanel的代码很多,很多次..
在这个任何帮助:)
感谢,
您是否尝试过这里提到的解决方案,http://stackoverflow.com/questions/299495/how-to-add-an-image-to-a-jpanel – 2015-04-03 11:04:21