Java基于Swing实现的打猎射击游戏代码
本文实例讲述了Java基于Swing实现的打猎射击游戏代码。分享给大家供大家参考。
具体实现代码如下:
package Game;
import java.awt.Graphics;
import java.awt.Image;
import javax.swing.JPanel;
public class BackgroundPanel extends JPanel {
private static final long serialVersionUID = 1L;
private Image image;// 背景图片
public BackgroundPanel() {
setOpaque(false);
setLayout(null);
}
public void setImage(Image image) {
this.image = image;
}
/**
* 画出背景
*/
protected void paintComponent(Graphics g) {
if (image != null) {
// 图片宽度
int width = getWidth();
// 图片高度
int height = getHeight();
// 画出图片
g.drawImage(image, 0, 0, width, height, this);
}
super.paintComponent(g);
}
}
package Game;
import java.awt.Container;
import java.awt.event.*;
import javax.swing.*;
public class BirdLabel extends JLabel implements Runnable {
private static final long serialVersionUID = 1L;
// 随机生成线程的休眠时间,即控制小鸟移动速度
private int sleepTime = (int) (Math.random() * 300) + 5;
private int y = 100;
private Thread thread;// 将线程作为成员变量
private Container parent;
private int score = 15;// 该类角色对应的分数
/**
* 构造方法
*/
public BirdLabel() {
super();
// 创建小鸟图标对象
ImageIcon icon = new ImageIcon(getClass().getResource("bird.gif"));
setIcon(icon);// 设置控件图标
addMouseListener(new MouseAction());// 添加鼠标事件监听器
// 添加控件事件监听器
addComponentListener(new ComponentAction());
thread = new Thread(this);// 创建线程对象
}
- 上一篇:java基于swing实现的连连看代码
- 下一篇:MyEclipse到期破解代码分享