谁会用java编写一个打地鼠游戏的代码???求解....

jrxgmm 2012-06-18 11:36:47
需要用eclipse编写...图片什么的都不重要..能大概表示出来是什么就可以.
谢谢啦
...全文
766 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
woyaoccc 2012-07-11
  • 打赏
  • 举报
回复
package shrewmouse;
import java.awt.EventQueue;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;

import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
public class Shrewmouse extends JFrame implements Runnable {
private JLabel[] mouses; //存放显示底数的标签数组
private ImageIcon imgMouse; //地鼠图片对象
public static void main(String args[]){
EventQueue.invokeLater(new Runnable(){
public void run(){
try{
Shrewmouse frame=new Shrewmouse(); //创建窗体
frame.setVisible(true); //显示窗体
new Thread(frame).start(); //启动线程
}catch(Exception e){
e.printStackTrace();
}
}
});
}
public Shrewmouse(){
super();
this.setResizable(false); //禁止调整窗体大小
this.getContentPane().setLayout(null); //窗体不使用布局管理器
this.setTitle("简易的打地鼠游戏"); //设置窗体标题
this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
ImageIcon img=new ImageIcon(getClass().getResource("background.jpg"));
//初始化背景图片
imgMouse=new ImageIcon(getClass().getResource("mouse.png"));
//初始化地鼠图片对象
mouses=new JLabel[6]; //创建显示地鼠的标签数组
for(int i=0;i<6;i++){ //遍历数组
mouses[i]=new JLabel(); //初始化每一个数组元素
mouses[i].setSize(imgMouse.getIconWidth(),imgMouse.getIconHeight());
//设置标签与地鼠图片相同大小
mouses[i].addMouseListener(new MouseAdapter(){//为标签添加鼠标事件监听适配器
/**
* 处理鼠标单击事件的方法
*/
@Override
public void mouseClicked(MouseEvent e){
Object source=e.getSource(); //获取事件源,即地鼠标签
if(source instanceof JLabel){ //如果事件是标签组件
JLabel mouse=(JLabel)source; //强制转换为JLabel标签
mouse.setIcon(null); //取消标签图标
}
}
});
this.getContentPane().add(mouses[i]); //添加显示地鼠的标签到窗体
}

mouses[0].setLocation(253, 300); //设置每个标签的位置
mouses[1].setLocation(333, 250);
mouses[2].setLocation(388, 296);
mouses[3].setLocation(362, 364);
mouses[4].setLocation(189, 353);
mouses[5].setLocation(240, 409);

final JLabel backLabel=new JLabel(); //创建显示背景的标签
backLabel.setBounds(0, 0, img.getIconWidth(), img.getIconHeight());
this.setBounds(100,100,img.getIconWidth(),img.getIconHeight());
backLabel.setIcon(img); //添加背景到标签
this.getContentPane().add(backLabel); //添加背景标签到窗体
}
/**
* 线程的核心方法
*/

public void run(){
while(true){ //使用无限循环
try{
Thread.sleep(1000); //使线程休眠1秒
int index=(int)(Math.random()*6); //生成随机的地鼠索引
if(mouses[index].getIcon()==null){ //如果地鼠标签没有设置图片
mouses[index].setIcon(imgMouse); //为该标签添加地鼠图片
}
}catch(InterruptedException e){
e.printStackTrace();
}
}
}

}
mimitracely 2012-07-10
  • 打赏
  • 举报
回复
用一张张图片表示出来地鼠,
当单机时,地鼠被消灭,
andongkai00 2012-07-10
  • 打赏
  • 举报
回复
能不能给个把鼠标挪到窗口内变锤子的代码啊?
sir_tian 2012-06-18
  • 打赏
  • 举报
回复
给我游戏规则吧 我给你写

58,454

社区成员

发帖
与我相关
我的任务
社区描述
Java Eclipse
社区管理员
  • Eclipse
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧