扫雷ppt
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
{card.show(this,"cover"); validate(); } public Button getBlockCover() {return blockCover;}
}
• Button reStart; • Block block[][]; • BlockView blockView[][]; • LayMines lay; • int row=10,colum=12,mineCount=22;
The end,thank you!
• pCenter.setLayout(new GridLayout(row,colum));
• 随机产生雷的代码
• for(int i=0;i<row;i++)
•
{
•
for(int j=0;j<column;j++)
•
{
•
if(block[i][j].isMine())
•
{
•
}
•
else
•
{
•
int mineNumber=0;
•
for(int k=Math.max(i-1,0); k<=Math.min(i+1,row-1); k++)
•
{
•
for(int t=Math.max(j-1,0); t<=Math.min(j+1,column-1); t++)
•
{
•
if(block[k][t].isMine())
•
mineNumber++;
•
}
•
}
•
block[i][j].setName(""+mineNumber);
•来自百度文库
block[i][j].setNumber(mineNumber);
•
}
•
}
•
}
运行界面
在本次设计中我碰到的一些问题:
在刚开始时,我们不知道如何制作界面,后来通 过书本学习以及上网查阅,知道了如何用代码实 现。 不知道扫雷是怎么实现的,然后通过玩游戏摸索 到规律,知道了编程的方向。
•}
• public String getName()
• {return blockName.getText();
•}
•
public void seeBlockName() {card.show(this,"name"); validate();
}
public void seeBlockCover()
•
blockName=new Label();
•
blockCover=new Button();
•
add("cover",blockCover);
•
add("name",blockName);
•
•
}
•
• public void setName(String name)
• {blockName.setText(name);
•
{for(int j=0;j<colum;j++)
•
block[i][j]=new Block();
•
}
• lay=new LayMines();
• lay.layMinesForBlock(block,mineCount);
• blockView=new BlockView[row][colum];
代码
• public class BlockView extends Panel{
• Label blockName;
• Button blockCover;
• CardLayout card;
• BlockView()
•{
•
card=new CardLayout();
•
setLayout(card);
小结
在为期两周的Java课程设计中,我学到了很多 东西。我加强了对Java程序设计这门课程的认识, 并且复习了自己以前学习的知识。通过这次课程 设计,我相信会为我之后的学习带来很大的好处, 像做界面这类问题,并不是我们平时只靠课本可 以解决的,所以,我锻炼了我的实战能力,以后 也会多多实践,提高综合能力。
Java课程设计
扫雷小游戏
要求: 制作扫雷游戏,要有运行的界面。
目的: 掌握Java中的常用类以及方法的调用。
展示流程
设计思想 界面设计及实现的代码
运行的结果
小结
设计思想
利用Frame和Panel构建界面,调用 方法进行界面的设计;利用二维数组存 储雷和数据;利用Random()来产生 随机数;用for循环来绘制雷的个数;用 While来判断是否有雷。
• reStart=new Button("重新开始");
•
pCenter=new Panel();
•
pNorth=new Panel();
•
pNorth.setBackground(Color.cyan);
•
block=new Block[row][colum];
•
for(int i=0;i<row;i++)
}
• Button reStart; • Block block[][]; • BlockView blockView[][]; • LayMines lay; • int row=10,colum=12,mineCount=22;
The end,thank you!
• pCenter.setLayout(new GridLayout(row,colum));
• 随机产生雷的代码
• for(int i=0;i<row;i++)
•
{
•
for(int j=0;j<column;j++)
•
{
•
if(block[i][j].isMine())
•
{
•
}
•
else
•
{
•
int mineNumber=0;
•
for(int k=Math.max(i-1,0); k<=Math.min(i+1,row-1); k++)
•
{
•
for(int t=Math.max(j-1,0); t<=Math.min(j+1,column-1); t++)
•
{
•
if(block[k][t].isMine())
•
mineNumber++;
•
}
•
}
•
block[i][j].setName(""+mineNumber);
•来自百度文库
block[i][j].setNumber(mineNumber);
•
}
•
}
•
}
运行界面
在本次设计中我碰到的一些问题:
在刚开始时,我们不知道如何制作界面,后来通 过书本学习以及上网查阅,知道了如何用代码实 现。 不知道扫雷是怎么实现的,然后通过玩游戏摸索 到规律,知道了编程的方向。
•}
• public String getName()
• {return blockName.getText();
•}
•
public void seeBlockName() {card.show(this,"name"); validate();
}
public void seeBlockCover()
•
blockName=new Label();
•
blockCover=new Button();
•
add("cover",blockCover);
•
add("name",blockName);
•
•
}
•
• public void setName(String name)
• {blockName.setText(name);
•
{for(int j=0;j<colum;j++)
•
block[i][j]=new Block();
•
}
• lay=new LayMines();
• lay.layMinesForBlock(block,mineCount);
• blockView=new BlockView[row][colum];
代码
• public class BlockView extends Panel{
• Label blockName;
• Button blockCover;
• CardLayout card;
• BlockView()
•{
•
card=new CardLayout();
•
setLayout(card);
小结
在为期两周的Java课程设计中,我学到了很多 东西。我加强了对Java程序设计这门课程的认识, 并且复习了自己以前学习的知识。通过这次课程 设计,我相信会为我之后的学习带来很大的好处, 像做界面这类问题,并不是我们平时只靠课本可 以解决的,所以,我锻炼了我的实战能力,以后 也会多多实践,提高综合能力。
Java课程设计
扫雷小游戏
要求: 制作扫雷游戏,要有运行的界面。
目的: 掌握Java中的常用类以及方法的调用。
展示流程
设计思想 界面设计及实现的代码
运行的结果
小结
设计思想
利用Frame和Panel构建界面,调用 方法进行界面的设计;利用二维数组存 储雷和数据;利用Random()来产生 随机数;用for循环来绘制雷的个数;用 While来判断是否有雷。
• reStart=new Button("重新开始");
•
pCenter=new Panel();
•
pNorth=new Panel();
•
pNorth.setBackground(Color.cyan);
•
block=new Block[row][colum];
•
for(int i=0;i<row;i++)