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(3000)//使线程休眠3秒
int index=(int)(Math.random()*6) //生成随机的地鼠索引
if(mouses[index].getIcon()==null){ //如果地鼠标签没有设置图片
mouses[index].setIcon(imgMouse) //为该标签添加地鼠图片
}
}catch(InterruptedException e){
e.printStackTrace()
}
}
}
}
只要是涉及到Map,List,Tree等等集合、列表之类的都算用到数据结构。所以说一般稍复杂点的程序都会用到数据结构,我想你应该问的是如何用数据结构的思想去理解打地鼠游戏吧?
如果是面向对象语言编程的话,首先你需要将每个小鼠洞看做一个对象,将全部鼠洞设计成该对象的二维数组。然后你需要有随机算法来指定哪个粗嫌森鼠洞是否出现老鼠。者轿然后还需要有触发事件来确定锤子的击打坐标。
真正要做出来要考虑还很多,希望你先理清思路然后岩亩由浅入深。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)