java实现动态图片效果
更新时间:2021年03月22日 08:49:32 作者:点丶错了。。
这篇文章主要为大家详细介绍了java实现动态图片效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
本文实例为大家分享了java实现动态图片效果,供大家参考,具体内容如下
源码
package forGame; import javax.imageio.ImageIO; import javax.swing.*; import java.awt.*; import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; //动态效果 public class Demo_1 extends JFrame{ //背景 private BufferedImage bufferedImage; //窗体大小 private int width; private int height; //要绘制的动态照片数组 private BufferedImage[] images = new BufferedImage[4]; //要绘制动态图中的那张 private BufferedImage image; //初始化 { if(bufferedImage == null){ try { bufferedImage = ImageIO.read(new File("src\\image\\背景.png")); for(int i = 1;i < images.length + 1;i ++) images[i - 1] = ImageIO.read(new File("src\\image\\大飞机爆炸" + i + ".png")); } catch (IOException e) { e.printStackTrace(); } } width = bufferedImage.getWidth(); height = bufferedImage.getHeight(); image = images[0]; } public Demo_1(){ super("动态测试"); //设置窗口 setSize(width,height); setLocationRelativeTo(null); setResizable(false); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setVisible(true); //启动线程 MyThread myThread = new MyThread(); myThread.start(); } //双缓冲绘制解决图片闪烁问题 @Override public void paint(Graphics g) { Image image = this.createImage(width,height); Graphics gImage = image.getGraphics(); gImage.setColor(gImage.getColor()); gImage.fillRect(0,0,width,height); super.paint(gImage); //绘制背景 gImage.drawImage(bufferedImage,0 ,0 ,null ); //绘制动态图片 gImage.drawImage(this.image,0 ,100 ,null ); //最后绘制缓冲后的图片 g.drawImage(image,0 ,0 , null); } private int num = 0;//images数组内图片索引 //线程内部类 private class MyThread extends Thread{ @Override public void run() { while(true) { if(num <= 3) { image = images[num ++]; } else num = 0; repaint(); try { sleep(100);//每隔100毫秒重绘一次 } catch (InterruptedException e) { e.printStackTrace(); } } } } public static void main(String[] args) { new Demo_1(); } }
效果图
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
相关文章
SpringBoot Knife4j框架&Knife4j的显示内容的配置方式
Knife4j框架是基于Swagger2开发的在线API文档生成工具,主要功能包括自动生成API文档、接口文档展示、接口测试工具、接口权限控制和在线调试,该框架支持通过注解自动生成详细的接口文档,开发者可以直接在文档界面进行接口测试和调试2024-09-09Java struts2 validate用户登录校验功能实现
这篇文章主要为大家详细介绍了Java struts2 validate用户登录校验功能实现的具体步骤,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2016-05-05
最新评论