课程设计——博客作业五子棋(201521123009 张晨晨)

•团队课程设计博客链接

•个人负责模块或任务说明

五子棋的绘制

棋盘的绘制

重新开始功能的实现

悔棋功能的实现

•自己的代码提交记录截图

•自己负责模块或任务详细说明

(1)五子棋的绘制,棋盘的绘制

public void paint(Graphics g){

setBackground(new Color(209, 167, 78));

for(int i=0;i

g.setColor(Color.BLACK);

g.drawLine(20, 20+i*gap, 640-20, 20+i*gap);

}

for(int i=0;i

g.setColor(Color.BLACK);

g.drawLine(20+i*gap, 20, 20+i*gap, 640-20);

}

for(int i=0;i

for(int j=0;j

if(Chess[i][j]=='1'){

g.setColor(Color.WHITE);

g.fillOval(5+i*gap, 5+j*gap, 30, 30);

g.drawOval(5+i*gap, 5+j*gap, 30, 30);

//a++;

}

if(Chess[i][j]=='2'){

g.setColor(Color.BLACK);

g.fillOval(5+i*40, 5+j*40, 30, 30);

g.drawOval(5+i*40, 5+j*40, 30, 30);

//a++;

}

}

}

我们棋盘的绘制选择直接绘制,棋子就是通过setColor,fillOval,.drawOval直接在棋盘上画出对应大小的圆

不过由于是直接绘制的,棋子的效果看起来并不大美观,而且有点空缺。

改进的话,希望可以把棋子改成棋子的图片,下棋的时候直接覆盖上去。

(2)重新开始功能的实现

public void restartGame(){

for(int i=0;i

for(int j=0;j

Chess[i][j]='0';

}

}

isBlack=true;

gameOver=false;

repaint();

}

要重新开始,则使棋子清空,使初始值为黑子,gameOver为false,并通知系统重新绘制

具体效果如下

(3)悔棋功能的实现

public void goback(){

flag = true;

System.out.println("清除"+click_x+click_y);

int chess_x = Math.round((float)(click_x-20)/gap);

int chess_y = Math.round((float)(click_y-20)/gap);

click_X = chess_x;

click_Y = chess_y;

repaint();

Chess[chess_x][chess_y] = '0';

}

建立flag来判断是否在悔棋过程中。

具体效果如下:

•课程设计感想

这次课程设计对我来说是一次很大的挑战,因为我能力有限,以前也只是仅限于在eclipse的运行界面直接运行。第一次尝试用JAVA程序做出一个五子棋游戏来,并且努力把它做完了。是一次很大的挑战,同时对我来说收获也很多。

我们在做出简单的棋盘后就会想要去更丰富自己的功能,让自己完善。添加联机对战,人机对战,选择自己的执子方等等。并且实现对界面的优化,使界面美观。

java课程设计培训班_Java课程设计相关推荐

  1. java 公交管理系统 代码_JAVA课程设计报告公交管理系统.pdf

    Java期末课程设计 -- Busmanagerment 课程名称:算法设计与分析 任课老师:吴倩 学生姓名:谢秀华 学生学号:1037005 所在院系:信息工程学院 班级: 10计算机1班 一.前言 ...

  2. java课程设计日历_java课程设计日历记事本赵锐.doc

    java课程设计日历记事本赵锐.doc 2本科生课程设计课程名称JAVA程序设计课程设计题目日历记事本学号201440930252学生姓名赵锐所在专业2014计算机学院所在班级信工2班成绩课程设计时间 ...

  3. java多功能计算器_Java课程设计多功能计算器 PDF 下载

    1.摘要: 为复习巩固Java语言的基础知识,进一步加深对java语言的理解和掌控.同过本课程设计使自身能够全面的掌握面向对象程序设计的有关概念和开发方法,以便能较全面地理解.掌握和综合运用所学的知识 ...

  4. java 课程设计 计算器_JAVA课程设计-计算器(201521123028 李家俊)

    1.团队课程设计博客链接 2.个人负责模板或任务说明 主要负责计算器图形界面 包括操作按钮,菜单项以及输出面板的设计 3.自己的代码提交记录截图 4.自己负责模块或任务详细说明 代码分析: 主类中有如 ...

  5. java飞机大战流程图_JAVA课程设计-飞机大战

    JAVA课程设计-飞机大战 1.团队名称.团队成员介绍 1.1 团队名称:做个飞机哦 1.2团队成员介绍: 余俊良(组长):编写博客.游戏主界面设计与实现.英雄机与子弹类的实现.场景设计 林祥涛:游戏 ...

  6. java课程设计 成绩_Java课程设计—学生成绩管理系统(201521123004-林艺如)

    1.团队课程设计博客 2.个人负责模块或任务说明 ①.Menu Menu.jsp 在页面中给出提示,用HTML的,与下一个跳转页面进行连接,即点击后进入下一个页面 MenuTeacher.jsp 利用 ...

  7. java课设 五子棋_Java课程设计 ————五子棋 (个人博客)

    JAVA课程设计 五子棋(博客个人版) •团队课程设计博客链接 •个人负责模块或任务说明 1.主框架类:设置棋盘窗体,颜色等 2.isWin方法:判断胜负 •自己的代码提交记录截图 •自己负责模块或任 ...

  8. java课程设计象棋_java课程设计 中国象棋

    [实例简介] 内附eclipse项目,可运行jar包,和课程设计报告,觉得让你一下子看懂 [实例截图] [核心代码] P17-象棋java课程设计 └── P17-象棋java课程设计 ├── res ...

  9. java设计五子棋_JAVA课程设计+五子棋(团队博客)

    JAVA课程设计 利用所学习的JAVA知识设计一个五子棋小游戏 1.团队名称.团队成员介绍(菜鸟三人组) 杨泽斌[组长]:201521123049 网络1512 叶文柠[组员]:20152112305 ...

最新文章

  1. Spring MVC 中使用 Google kaptcha 验证码
  2. 常用WebService一览表
  3. 怎样写APP计划书-20150313早读课
  4. jmeter导入DB数据再再优化
  5. python标准化输出
  6. 透过WebGL 3D看动画Easing函数本质
  7. hive 时间函数_Hive常用大法(聚合/排序/分组)
  8. gSLICr: SLIC superpixels at over 250Hz
  9. C语言新手写扫雷攻略1
  10. 卓越、当当、京东三大广告联盟比较
  11. Vegas安装出现问题怎么办?
  12. 熊猫烧香病毒作者再被捕 开网络赌场敛财
  13. 读懂才会用 : 瞅瞅Redis的epoll模型
  14. 英语单词常见后缀词性
  15. 人工智能兴起的条件_跟我说规矩。 AI受虐狂的兴起
  16. 医院招聘护士 计算机证,医院招聘护士的自我介绍
  17. 题目:在C语言中,表达式23|2^5的值是()
  18. MCU学习——无线遥控模块
  19. MavenLombok
  20. linux 下 FFmpeg 录制命令

热门文章

  1. 汽车修理工中级理论复习资料
  2. 高云FPGA(四):抓信号
  3. 时间格式Y M D S W 的大小写,和字母含义
  4. plc和计算机语言,PLC的几种编程语言
  5. Python和Java哪个更容易就业?
  6. 《AutoCAD 2016中文版从入门到精通》——1.6 上机实验
  7. android 浏览器搜索记录
  8. 你的GitHub项目被封存到北极了吗?
  9. vscode使用pinia官网字体
  10. 扩展欧几里得 解方程小记