如何在JFrame中显示图像

时间:2014-03-27 15:13:11

标签: java image swing jframe

好的,这可能会被标记为重复的问题,但请先听我说。我已经浏览了整个互联网并尝试了各种方式在JFrame中显示图像,但没有任何对我有用。有没有简单,万无一失!在JFrame中显示图片的方式?因为如果它不是万无一失的,我一定要搞砸了:/

1 个答案:

答案 0 :(得分:4)

你可以试试这个,我已经评论了我做了什么以及在哪里尝试让它变得可以理解,并且包含了一些关于从this帖子调整大小的内容。看看你如何:)

public class SO2 {
  public static void main(String[] args) {
    try {
        //Step 1, read in image using javax.ImageIO
        BufferedImage img = ImageIO.read(new File("D:/Users/user/Desktop/Tree.jpeg"));

        //Optional, if you want to resize image this is an effective way of doing it
        Image scaled = img.getScaledInstance(200, 200, Image.SCALE_SMOOTH); 

        //Step 2 create frame
        JFrame frame = new JFrame();
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        //Step 3 add image to Frame
        frame.add(new JLabel(new ImageIcon(scaled)));

        //Step 4 Pack frame which sizes it around it's contents, then Show
        frame.pack();
        frame.setLocationRelativeTo(null);
        frame.setVisible(true);
    } catch (IOException e) {
        e.printStackTrace();
    }
  }
}