制作小动画

时间:2014-12-13 09:05:04
【文件属性】:
文件名称:制作小动画
文件大小:2KB
文件格式:TXT
更新时间:2014-12-13 09:05:04
龙行 import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Animation extends JFrame implements Runnable,ActionListener{ private Container cont; private JButton btnUp; private JButton btnDown; private ImageIcon imgPlane; private ImageIcon imgBullet; private int planeX; private int planeY; private int bulletX; private int bulletY; private int planeSpeed; private int bulletSpeed; private int planeChangeSpeed; private Thread thread; public Animation(){ this.setBounds(30, 30, 400, 300); this.setDefaultCloseOperation(this.EXIT_ON_CLOSE); cont = this.getContentPane(); cont.setLayout(null); imgPlane = new ImageIcon("find.jpg"); imgBullet = new ImageIcon("bullet.jpg"); planeX = 0; planeY = 150; bulletX = 400; bulletY = 150; planeSpeed = 8; bulletSpeed = 8; planeChangeSpeed = 6; btnUp = new JButton("up"); btnDown = new JButton("down"); btnUp.setBounds(0, 240, 80, 30); btnDown.setBounds(90, 240, 80, 30); btnUp.addActionListener(this); btnDown.addActionListener(this); cont.add(btnUp); cont.add(btnDown); thread = new Thread(this); thread.start(); this.setVisible(true); } public void paint(Graphics grp){ super.paint(grp); imgPlane.paintIcon(this, grp, planeX, planeY); imgBullet.paintIcon(this, grp, bulletX, bulletY); } public void run(){ while((bulletX > 0) &&(planeX < 400)){ repaint(); planeX = planeX + planeSpeed; bulletX = bulletX - bulletSpeed; try{ Thread.sleep(200); }catch(Exception e){} } thread = null; } public void actionPerformed(ActionEvent aEvt){ JButton ob=(JButton)aEvt.getSource(); if(ob==btnUp){ planeY-=planeChangeSpeed; } if(ob==btnDown){ planeY+=planeChangeSpeed; } } public static void main(String args[]){ new Animation(); } }

网友评论