「java怎么插入动图」如何在java中添加图片
本篇文章给大家谈谈java怎么插入动图,以及如何在java中添加图片对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
java中在窗体的创建一个面板中加入一个gif动态图
你是说 JPanel 吗?两种方法:
添加 JLabel,给 JLabel 添加 ImageIcon,然后放置 JLabel 到 JPanel 上就行了:
JPanel pnl = new JPanel();
......
JLabel lblImage = new JLabel(new ImageIcon("你的文件名")); //创建一个带图片的 JLabel
lblImage.setBounds(0, 0, pnl.getWidth(), pnl.getHeight()); //设置 图片的横坐标、纵坐标、宽、高
pnl.add(lblImage); //放置这个 JLabel 到你的 JPanel 上面
还有一种方法是重写 JPanel 的 paint() 方法:
class YourPanel extends JPanel {
private Image img = Toolkit.getDefaultToolkit().createImage("你的文件名"); //用 Toolkit 的 createImage 方法来创建一个 Image 对象
@Override public void paint (Graphics g) {
super.paint(g);
g.drawImage(img, 0, 0, getWidth(), getHeight()); //绘制图片,第一个参数是 Image 对象,第二个参数是 横坐标,第三个是 纵坐标,第四个是 宽,第五个是 高
}
}
以上你隐式重写也可以:
JPanel pnl = new JPanel() {
@Override public void paint (Graphics g) {
...... //但是要注意这样如果你把 Image 声明成了局部变量或者参数形式,你需要声明成 final
}
}
java如何传输动态图片(GIF图片)?
实现思路:无论是何种类型,都是转换为流的形式进行的文件传输和存储。
可以通过BufferedReader 流的形式进行流缓存,之后通过readLine方法获取到缓存的内容。
BufferedReader bre = null;
OutputStreamWriter pw = null;//定义一个流
try {
String file = "D:/test/test.GIF";
bre = new BufferedReader(new FileReader(file));//此时获取到的bre就是整个文件的缓存流
pw = new OutputStreamWriter(new FileOutputStream(“D:/New.GIF”),"GBK");//确认流的输出文件和编码格式,此过程创建了“test.GIF”实例
while ((str = bre.readLine())!= null) // 判断最后一行不存在,为空结束循环
{
pw.write(str);//将要写入文件的内容,可以多次write
};
bre.close();
pw.close();//关闭流
备注:文件流用完之后必须及时通过close方法关闭,否则会一直处于打开状态,直至程序停止,增加系统负担。
求助,怎样在java窗体中添加gif动态图片
JLabel(Icon image)
创建具有指定图像的 JLabel 实例。
加载图片后,可以直接创建一个jlabel显示
java动态绘图
01 package com.zuidaima.swing;
02
03 import java.awt.Color;
04 import java.awt.Graphics;
05 import java.awt.Image;
06 import java.awt.Toolkit;
07
08 import javax.swing.JFrame;
09
10 @SuppressWarnings("serial")
11 class Cardioid extends JFrame {
12 // 定义窗口大小
13 private static final int WIDTH = 480;
14 private static final int HEIGHT = 600;
15
16 // 获取屏幕大小
17 private static int WINDOW_WIDTH = Toolkit.getDefaultToolkit()
18 .getScreenSize().width;
19 private static int WINDOW_HEIGHT = Toolkit.getDefaultToolkit()
20 .getScreenSize().height;
21
22 // 构造函数
23 public Cardioid() {
24 // 设置窗口标题
25 super("❤形线");
26 // 设置背景色
27 this.setBackground(Color.BLACK);
28 // 设置窗口位置
29 this.setLocation((WINDOW_WIDTH - WIDTH) / 2,
30 (WINDOW_HEIGHT - HEIGHT) / 2);
31 // 设置窗口大小
32 this.setSize(WIDTH, HEIGHT);
33 // 设置窗口布局
34 this.setLayout(getLayout());
35 // 设置窗口可见
36 this.setVisible(true);
37 // 设置窗口默认关闭方式
38 this.setDefaultCloseOperation(DISPOSE_ON_CLOSE);
39 }
40
41 public void paint(Graphics g) {
42
43 double x, y, r; // 横纵坐标及半径
44 Image image = this.createImage(WIDTH, HEIGHT);
45 Graphics pic = image.getGraphics();
46
47 // 绘制图形
48 for (int i = 0; i 100; i++) {
49 for (int j = 0; j 100; j++) {
50 r = Math.PI / 45 + Math.PI / 45 * i
51 * (1 - Math.sin(Math.PI / 45 * j)) * 18;
52
53 x = r * Math.cos(Math.PI / 45 * j) * Math.sin(Math.PI / 45 * i)
54 + WIDTH / 2;
55
56 y = -r * Math.sin(Math.PI / 45 * j) + HEIGHT / 2;
57
58 pic.setColor(Color.MAGENTA);
59 pic.fillOval((int) x, (int) y, 2, 2);
60 }
61 // 生成图片
62 g.drawImage(image, 0, 0, this);
63
64 }
65
66 }
67
68 public static void main(String[] args) {
69
70 new Cardioid();
71 }
72
73 }
java怎么插入动图的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于如何在java中添加图片、java怎么插入动图的信息别忘了在本站进行查找喔。