代码改变世界

JavaSwing 插入图片

2022-07-20 23:37  darling达  阅读(2037)  评论(0)    收藏  举报

windowbuilder里面不能直接插入图片只能在代码中实现。
你可以先在可视化界面创建一个JLable然后再在代码里使用imageicon的方式把图片插进去。

ImageIcon image=new ImageIcon(“图片存储路径”);
JLabel label=new JLabel(image);//用图片构造一个JLabel标签
Container.add(JLabel);

 

先整理思路:先重写父类的方法paintComponent(Graphics g),然后先用getImage()获取图片,再用drawImage绘制图片

  • 注意,图片应该是gif或者png格式,存放在src同级的文件夹images内才能生效

 

 

drawImage()——这个函数有重载了很多方法,我们这里使用的是6个参数版本drawImage(img, x, y, width, height, observer)

  • img是文件名
  • x,y是int类型的坐标
  • width, height就是宽度和高度
  • observer目前填null即可

不难发现,插入图片经常需要用到Image 的实例对象,有多种声明方式,做一下整理——

1、使用javax.imageio包下ImageIO类的read() 方法

  • Image image = ImageIO.read(new FileInputStream(“文件路径”));
  • Image image = ImageIO.read(new File());
  • Image image = ImageIO.read(new URL());

  

 

2、使用Toolkit类下的getImage()方法

  • Toolkit.getDefaultToolkit().getImage(“图片路径”);

 

 

 

 3、使用ImageIcon类的getImage() 方法

  • new ImageIcon("图片路径).getImage();

 

 

 补充一个小点,在制作项目需要用到大量图片时,可以用一个专门的类实例化大量的静态的图片变量,需要是就可以直接类名.图片名进行调用,非常方便

 

这里用到的是ImageIO类来加载图片

 

语句为:image=ImageIO.read(new File("H:\\aa.jpg"));

 

new File("")里是要添加的图片。