JAVA课设---五子棋
1.团队博客链接
JAVA课设-五子棋-团队博客
2.个人负责模块:
①对鼠标事件的处理 , 此模块需处理五子棋的放置问题、颜色转换问题、以及当五子连线时弹出窗口显示结果。
②对MainFrame中主函数的编写。
③将代码打包为jar包并转为EXE软件。
④对小组任务的分配及汇总。
3.关键代码截图:
1.Frame
此为MainFrame中主函数部分,将窗体和背景写出来了,并对棋盘位置设置为窗口中心;
2.Mouse
此为鼠标事件的主要部分,对黑白祺的转换、输赢的判断;
int chess_x = Math.round((float)(click_x-20)/gap);
int chess_y = Math.round((float)(click_y-20)/gap); //Math.round是四舍五入函数,这是对棋子放置范围进行四舍五入规划
if((isBlack==true&&Chess[chess_x][chess_y]=='0' && flag == false )||(flag == true &&isBlack==false&&Chess[chess_x][chess_y]=='0')){
//放置棋子成功,并且为黑棋,下一步颜色转换为白棋
Chess[chess_x][chess_y] = '2';
isBlack = false;//换为白子
flag = false;
}
if((isBlack==false&&Chess[chess_x][chess_y]=='0'&& flag == false ) || ( flag == true &&isBlack==true &&Chess[chess_x][chess_y]=='0')){
//放置棋子成功,并且为白棋,下一步颜色转换为黑棋
Chess[chess_x][chess_y] = '1';
isBlack = true;//换为黑子
flag = false;
}
repaint(); //重新绘制,记录之前放置的棋子,类似刷新棋盘
if(isWin(chess_x,chess_y,isBlack)){ //根据isBlack弹出JOptionPane窗口告知输赢
if(isBlack){
JOptionPane.showMessageDialog(null,"白子赢了");
//当此时未放置棋子颜色为黑子,但白棋已满足isWin函数,故弹出窗口显示白棋赢
}else{
JOptionPane.showMessageDialog(null,"黑子赢了");
//当此时未放置棋子颜色为白子,但黑棋已满足isWin函数,故弹出窗口显示黑棋赢
}
3.jar--->exe
以上是对exe4j软件的应用,将jar包转换为exe文件的过程及实现。
4.个人码云截图
JAVA课设---五子棋的更多相关文章
- java课设 五子棋代码编写(团队)
1. 团队课程设计博客链接 http://www.cnblogs.com/yzb123/p/7063424.html 2.个人责模块或任务说明 1.主函数编写,设置图形界面 2,设置功能按钮 3.使用 ...
- JAVA课设--五子棋--团队博客
1 团队名称.团队成员介绍 徐璐琳 网络1511班 201521123010 祁泽文 网络1511班 201521123011 张晨晨 网络1511班 201521123009 2 项目git地址 团 ...
- JAVA课设个人博客--多源数据教学管理系统
JAVA课设个人博客--多源数据教学管理系统 1.团队课程设计博客链接 https://www.cnblogs.com/hq9-/p/10278470.html 2. 个人负责模块或任务说明 主要模块 ...
- java课设数据库打包报错
最近在交java课设时把东西打包给老师遇到许多奇葩问题, 首先是数据库复制时提示: 这是数据库与SQL server服务没有分离(我用的是SQLserver暂时,对于其他的,我以后会继续尝试)可以进行 ...
- 2018-2019学年第一学期Java课设--魔塔
目录 Magic-Towers 一.团队名称.团队成员介绍.任务分配 团队名称:MoTa 团队成员介绍 任务分配 二.项目简介 三.项目采用技术 四.项目亮点 主界面显示主要信息功能 游戏动画 五.项 ...
- JAVA课设——中药古籍《太平圣惠方》数据处理与分析系统
一.配置JAVA环境 本次课设是在Windows 10(64bit)平台上实现的,所以首先得配置下JAVA环境. 步骤一:先下载一个JDK(1.7)安装包,安装好JDK: 步骤二:JDK环境配置(由于 ...
- Java课设--俄罗斯方块Tetris
Java程序设计课程作业报告 作业:俄罗斯方块游戏 姓名 赵璐媛 学号 程序得分 90% 作业报告 得分10% 实验总分 100% 作业目的: 掌握基本的图形程序设计方法 掌握Java事件处理程序编写 ...
- Java课设(学生信息管理系统)
1.团队课程设计博客链接 http://www.cnblogs.com/Min21/p/7064093.html 2.个人负责模板或任务说明 设计登陆界面和学生信息界面的设计,学生信息的显示.退出等功 ...
- JAVA课设 学生基本信息管理 团队博客
1.成员 邹其元 网络1512 201521123060 杨钧宇 网络1512 201521123062 2.项目Git地址 团队项目码云地址 //添加截图 3. 项目git提交记录截图(要体现出每个 ...
随机推荐
- 计蒜客模拟赛D2T1 蒜头君的兔子:矩阵快速幂
题目链接:https://nanti.jisuanke.com/t/16442 题意: 有个人在第一年送了你一对1岁的兔子.这种兔子刚生下来的时候算0岁,当它在2~10岁的时候,每年都会生下一对兔子, ...
- append()方法生成的元素绑定的事件失效解决办法
我使用append()方法动态生成的a链接的click事件没有起效果,查找了资料,了解到,我使用的onclick方法绑定的事件对动态生成的元素是无效的,解决办法如下: 使用事件委托,并且要用on来绑定 ...
- SQL查询操作及子句优先级
用source .sql文件竟然可以自动建表. 简单数据查询: select * from table_name; 避免重复查询: select distinct(field_name) from t ...
- Mac实用操作技巧(四)
在文档编辑状态下更改文件名.保存位置 在编辑文档的时候,有时候想随时更改文件名或者更改文件的保存位置.通常情况下,比如Windows环境中,想要更改文件名,首先需要关闭文档,否则不能修改:想要更改文档 ...
- JDBC在springMvc等框架中使用的方式
连接池jar:c3p0 代码结构 ----------------------------------------------- 配置文件 config.properties #hibernate. ...
- web workers工作线程
web worker工作线程是Html5里面提出来的一个新api,对于JavaScript我们的印象是单线程执行,如果运行复杂运算的时候,页面可能就会失去响应,是运行在后台的javascript,独立 ...
- 盼盼Degenerate——清除浮动的方法
<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <meta name= ...
- Shiro入门
Shiro是由Apache提供的一个强大且易用的Java安全开源框架,执行身份验证.授权.密码学和会话管理.使用Shiro的易于理解的API,您可以快速.轻松地获得任何应用程序,从最小的移动应用程序到 ...
- java模拟斗地主发牌看牌
import java.util.ArrayList; import java.util.Collections; import java.util.HashMap; public class Dou ...
- C# 隐藏文件
void SerializeXmlNodes(XmlSerializer serialize, string filePath, List<XmlNode> nodes) { using ...