「java动画控件」java动画效果
今天给各位分享java动画控件的知识,其中也会对java动画效果进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
- 1、java 简单动画 就是将一个圆点从一个坐标移动到另一个坐标即可
- 2、java做动画的原理,加个实例,谢谢
- 3、JAVA小动画程序
- 4、怎么用java做动画
- 5、2.Java有哪几种常见的实现动画的方法?
java 简单动画 就是将一个圆点从一个坐标移动到另一个坐标即可
一个简单的范例,不明白追问吧
import java.awt.Color;
import java.awt.Graphics;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
public class MoveAnimationDemo extends JFrame {
public MoveAnimationDemo() {
this.setContentPane(new AnimationPanel());
this.setSize(500, 500);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
}
/**
* 开始动画
*/
public void startAnimation() {
// 设定初始条件
x = START_X;
y = START_Y;
// 创建计时器
timer = new Timer(DELAY_TIME, new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// 每一次延迟过后,调用一次
x += 1;
y += 1;
repaint();
// 满足结束条件就停止
if (x = END_X || y = END_Y) {
timer.stop();
}
}
});
// 开启计时器
timer.start();
}
public static void main(String[] args) {
MoveAnimationDemo demo = new MoveAnimationDemo();
demo.setVisible(true);
demo.startAnimation();
}
private class AnimationPanel extends JPanel {
@Override
protected void paintComponent(Graphics g) {
super.paintComponent(g);
g.setColor(CIRCLE_COLOR);
g.fillOval(x, y, CIRCLE_SIZE, CIRCLE_SIZE);
}
}
// 圆点颜色
private static final Color CIRCLE_COLOR = Color.RED;
// 圆点大小
private static final int CIRCLE_SIZE = 10;
// 起始位置
private static final int START_X = 50;
private static final int START_Y = 50;
// 终止位置
private static final int END_X = 400;
private static final int END_Y = 400;
// 动画帧之间的延时,每秒60帧
private static final int DELAY_TIME = 1000 / 60;
// 当前位置
private int x;
private int y;
private Timer timer;
}
java做动画的原理,加个实例,谢谢
我用swing 做了个 雷霆战机的。。 g.fillRect(x60, y60, 10, 10);
g.fillRect(x70, y70, 10, 10); 画子弹的
g.drawImage(new ImageIcon("src/fr.jpg").getImage(),x0,y0,7,7,rootPane); 画飞机的
g.drawImage(new ImageIcon("src/fr.jpg").getImage(),x02,y02,7,7,rootPane);
g.drawImage(new ImageIcon("src/fr.jpg").getImage(),x03,y03,7,7,rootPane);
用多线程 然后不停刷新 (g 是 Graphics g x60, y60 这些都是坐标 后面的是长宽 )
当时import的包
import java.applet.Applet;
import java.applet.AudioClip;
import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.util.Date;
import java.util.Random;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.Timer;
JAVA小动画程序
import javax.swing.*;
import java.awt.*;
class MyPanel extends JPanel implements Runnable {
private Image img;
private int i=0;
private int j=0;
public MyPanel() {
img=new ImageIcon("c:\\1.png").getImage();
}
public void paint(Graphics g) {
g.drawImage(img,0,0,60,104,i*60,j*104,i*60+60,j*104+104,this);
}
public void run() {
while(true) {
while(j==0) {
while(i==0) {
try {
Thread.sleep(300);
} catch(Exception e) { }
this.repaint();
i++;
}
j++;
i=0;
}
i=0;
j=0;
}
}
}
public class test extends JFrame {
private MyPanel p;
public test() {
p=new MyPanel();
this.add(p,BorderLayout.CENTER);
this.setBounds(300,200,300,300);
this.setTitle("人物行走图");
new Thread(p).start();
this.setVisible(true);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public static void main(String args[]) {
new test();
}
}
你把那个图片放在c盘下就行了
怎么用java做动画
重写paint方法,来实现将自己定义的图片绘制到组件中,然后启动一个线程来控制paint方法。 示例: ××××××××××××××××××××××××××× import javax.swing.*; import java.awt.*;class MyPanel extends JPanel implements Runnable {private Image img;private int i=0;private int j=0;public MyPanel(){img=new ImageIcon("1.png").getImage();}public void paint(Graphics g){g.drawImage(img,0,0,60,104,i*60,j*104,i*60+60,j*104+104,this);}public void run(){while(true){while(j {while(i {try{Thread.sleep(300);}catch(Exception e){}this.repaint();i++;}j++;i=0;}i=0;j=0;}} }public class test extends JFrame {private MyPanel p;public test(){p=new MyPanel();this.add(p,BorderLayout.CENTER);this.setBounds(300,200,300,300);this.setTitle("人物行走图");new Thread(p).start();this.setVisible(true);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);}public static void main(String args[]){new test();} }××××××××××××××××××××××× 将以上源码保存为:test.java,编译,然后下载下面的图片 将下载的图片改名为1.png" target="_blank"
,然后将其和编译后生成的class文件放在同一文件夹下,然后运行就可以了·~~
2.Java有哪几种常见的实现动画的方法?
一: 用多线程播放一组图片, 实现动画片的效果; 类似于逐帧动画,每个图片是动画的一帧
二: 在awt/swing界面里, 可以使用paint方法,去绘制图形,然后用swing提供的Timer或者多线程技术,去刷新绘制的图形
三:在JavaFX里, 本身就支持动画,并且封装了很多动画效果可以直接使用,比如逐帧动画.缩放动画,渐变动画,旋转动画,位置动画等.
强烈推荐使用javaFX来实现动画, 因为javaFX是现代化的图形界面工具,具有简单,强大,组件丰富,跨平台,支持Html5, 支持表格, 支持动画等多种优势
下面是一个javaFX绘制的动态表格
javaFX动态表格
关于java动画控件和java动画效果的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。