Java swing 加载和显示图片 利用Image与BufferedImage

Image是一个抽象列,BufferedImage是Image的实现。 
Image和BufferedImage的主要作用就是将一副图片加载到内存中。 
Java将一副图片加载到内存中的方法是: 
Java代码    收藏代码
  1. String imgPath = "C://demo.jpg";  
  2. BufferedImage image = ImageIO.read(new FileInputStream(imgPath));  

该方法可以获得图片的详细信息,例如:获得图片的宽度:image.getWidth(null);图片只有加载内存中才能对图片进行进一步的处理。 


还有一个方法 
Java代码    收藏代码
  1. String imgPath = "C://demo.jpg";  
  2. Image imageToolkit.getDefaultToolkit().getImage(imgPath);  

但该方法不能把图片加载到内存中,仅仅是得到图片,所以也就不能获得图片的信息,图片的长宽信息都无法拿到。

文章地址: http://javapub.iteye.com/blog/683944
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
要在Java Swing显示多张图片,您可以使用JPanel和JLabel组合来实现。下面是一个简单的示例代码: ```java import javax.swing.*; import java.awt.*; import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; import javax.imageio.ImageIO; public class MultiImageExample extends JFrame { public MultiImageExample() { setTitle("Multi Image Example"); setSize(800, 600); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); JPanel panel = new JPanel(new GridLayout(2, 3)); BufferedImage image1 = null; BufferedImage image2 = null; BufferedImage image3 = null; BufferedImage image4 = null; BufferedImage image5 = null; BufferedImage image6 = null; try { image1 = ImageIO.read(new File("image1.jpg")); image2 = ImageIO.read(new File("image2.jpg")); image3 = ImageIO.read(new File("image3.jpg")); image4 = ImageIO.read(new File("image4.jpg")); image5 = ImageIO.read(new File("image5.jpg")); image6 = ImageIO.read(new File("image6.jpg")); } catch (IOException e) { e.printStackTrace(); } JLabel label1 = new JLabel(new ImageIcon(image1)); JLabel label2 = new JLabel(new ImageIcon(image2)); JLabel label3 = new JLabel(new ImageIcon(image3)); JLabel label4 = new JLabel(new ImageIcon(image4)); JLabel label5 = new JLabel(new ImageIcon(image5)); JLabel label6 = new JLabel(new ImageIcon(image6)); panel.add(label1); panel.add(label2); panel.add(label3); panel.add(label4); panel.add(label5); panel.add(label6); getContentPane().add(panel, BorderLayout.CENTER); } public static void main(String[] args) { MultiImageExample example = new MultiImageExample(); example.setVisible(true); } } ``` 在这个示例中,我们创建了一个JFrame,并将一个JPanel添到其中。我们使用GridLayout将JPanel分为2行3列。然后,我们6个图像文件,并将其转换为BufferedImage。最后,我们创建6个JLabel,并将它们分别包装在JPanel中。最终,我们将JPanel添到JFrame中央区域。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值