java实现扫雷代码 java扫雷代码简单实现( 四 )


求高手帮忙一个“扫雷”游戏的JAVA的程序代码import javax.swing.ImageIcon;//程序入口
public class Block {
String name;//名字,比如"雷"或数字
int aroundMineNumber;//周围雷的数目
ImageIcon mineIcon;//雷的图标
boolean isMine=false;//是否是雷
boolean isMark=false;//是否被标记
boolean isOpen=false;//是否被挖开
public void setName(String name) {
this.name=name;
}
//设置周围的雷数
public void setAroundMineNumber(int n) {
aroundMineNumber=n;
}
//获得周围的雷数
public int getAroundMineNumber() {
return aroundMineNumber;
}
public String getName() {
return name;
}
//判断是否是雷
public boolean isMine() {
return isMine;
}
//设置是否为雷
public void setIsMine(boolean b) {
isMine=b;
}
//设置雷的图标
public void setMineIcon(ImageIcon icon){
mineIcon=icon;
}
//获得雷的图标
public ImageIcon getMineicon(){
return mineIcon;
}
//确定雷是否被挖开
public boolean getIsOpen() {
return isOpen;
}
//设置为已经被挖开
public void setIsOpen(boolean p) {
isOpen=p;
}
//返回此处是否已经被标记
public boolean getIsMark() {
return isMark;
}
//设置此处是否已经被标记
public void setIsMark(boolean m) {
isMark=m;
}
import javax.swing.*;
import java.awt.*;
public class BlockView extends JPanel{
JLabel blockNameOrIcon; //用来显示Block对象的name、number和mineIcon属性
JButton blockCover;//用来遮挡blockNameOrIcon.
CardLayout card;//卡片式布局
BlockView(){
card=new CardLayout();
setLayout(card);
blockNameOrIcon=new JLabel("",JLabel.CENTER);
blockNameOrIcon.setHorizontalTextPosition(AbstractButton.CENTER);
blockNameOrIcon.setVerticalTextPosition(AbstractButton.CENTER);
blockCover=new JButton();
add("cover",blockCover);
add("view",blockNameOrIcon);
}
//给出视觉效果变化
public void giveView(Block block){
// 如果是雷,将对应的图标和文字更改
if(block.isMine){
blockNameOrIcon.setText(block.getName());
blockNameOrIcon.setIcon(block.getMineicon());
}
else {
int n=block.getAroundMineNumber();
if(n=1)
blockNameOrIcon.setText(""+n);
else
blockNameOrIcon.setText(" ");
}
}
public void seeBlockNameOrIcon(){
card.show(this,"view");
validate();
}
public void seeBlockCover(){
card.show(this,"cover");
validate();
}
public JButton getBlockCover(){
return blockCover;
}
}
用java怎么写扫雷程序首先要写一个UI,也就是操作界面,使用java.swing.*内的东西就可以搞定;
其次写一个hander,也就是具体的按钮响应 , UI的初始化(哪里有雷),怎么触发雷和其他的;
一般来说简单的扫雷模型就好了,如果需要更有意思点 , 可以写一些数据库的操作内容的tool类具体的就是处理历史操作记录 , 场均数据或多人竞技的特点 。
如果你是说你没有设计思路 , 我可以给你个提示:递归算法是触发扫雷的方法,初始化用随机数来做 。
java实现扫雷代码的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java扫雷代码简单实现、java实现扫雷代码的信息别忘了在本站进行查找喔 。

推荐阅读