java课程设计(个人)--五子棋
1.团队课程设计博客链接
http://www.cnblogs.com/mz201521044152/p/7065575.html
2.个人负责模块说明
棋盘类,绘制棋盘,绘制棋子,按钮设置,鼠标监听事件设计;
3.个人代码提交记录

4.自己负责模块或任务详细说明
//棋盘类
public class Form1 extends Panel implements MouseListener,ActionListener{
private JMenuItem startMenuItem, exitMenuItem, backMenuItem,BlackMenuItem,WhiteMenuItem;
private JButton startButton, backButton, exitButton,BlackButton,WhiteButton;
private static final int line = 15;//列数
private static final int row = 15;//行数
private static final int gap = 40;//间距
private static boolean isBlack = true;
int chessCount; // 当前棋盘的棋子个数
public static int click_X;//当前下棋子的索引
private static int click_Y;
private char[][] Chess= new char[15][15];
//Point[] chessList = new Point[17 * 17]; // 初始每个数组元素为null
private List<Integer> listX = new ArrayList<Integer>();
private List<Integer> listY = new ArrayList<Integer>();
public Form1(){
super();
for(int i=0;i<Chess.length;i++){
for(int j=0;j<Chess[i].length;j++){
Chess[i][j]='0';
}
}
}
//画棋盘网格绘制
public void paint(Graphics g){
//int intGame_Start=0;//游戏开始标志 0未开始 1游戏中
for(int i=0;i<row;i++){//划横线
g.setColor(Color.BLACK);
g.drawLine(20, 20+i*gap, 580, 20+i*gap);
}
for(int i=0;i<line;i++){//划纵线
g.setColor(Color.BLACK);
g.drawLine(20+i*gap, 20, 20+i*gap,580);
}
startButton = new JButton("重新开始");//三个按钮初始化
backButton = new JButton("悔棋");
exitButton = new JButton("退出");
BlackButton=new JButton("黑棋");
WhiteButton=new JButton("白棋");
//形成开始,悔棋,推出的图形框
setLayout(null);
//addActionListener(this);
add(startButton);
startButton.setBounds(650,80,80,50);
startButton.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
restartGame();
}
});
5.课程设计感想
有很多netBeans里的方法和定义都还没有弄懂,后来网上搜资料,百度一些关于javanetbeans的使用才慢慢学会了很多,比如鼠标监听,设置按钮等;这次本来准备把联机对战的代码写出来的,由于自身知识掌握不多,还是很遗憾,以后要继续努力。
java课程设计(个人)--五子棋的更多相关文章
- JAVA课程设计——单机版五子棋
JAVA课程设计--单机版五子棋 1.团队名称.团队成员介绍 团队名称:Gomoku小分队 团队成员: 网络1512 201521123038 游舒婷(组长) 网络1512 201521123043 ...
- java课程设计(团队)-五子棋
单机五子棋小游戏 一:团队介绍 组长:网络1511,毛卓 组员:网络1511,朱潞潞 组员:网络1511,范阳斌 二:项目git提交记录截图 三:项目使用主要技术 netBeans,GUI 四:项目特 ...
- JAVA课程设计+五子棋(团队博客)
JAVA课程设计 利用所学习的JAVA知识设计一个五子棋小游戏 1.团队名称.团队成员介绍(菜鸟三人组) 杨泽斌[组长]:201521123049 网络1512 叶文柠[组员]:20152112305 ...
- Java课程设计 ————五子棋 (个人博客)
JAVA课程设计 五子棋(博客个人版) •团队课程设计博客链接 http://www.cnblogs.com/mz201521044152/p/7065575.html •个人负责模块或任务说明 1. ...
- java(课程设计之记事本界面部分代码公布)
代码:涉及记事本的一些界面......!! /* *java课程设计之记事本(coder @Gxjun) * 编写一个记事本程序 * 要求: * 用图形用户界面实现. * 能实现编辑.保存.另存为.查 ...
- java课程设计(计算器)
JAVA课程 设 计 报 告 1206401-18 瞿杰 一.设计时间 2013年6月 24日-----6月28日 二.设计地点 湖南城市学院实验楼计算机506机房 三.设计目的 1.巩固学习VB ...
- Java课程设计——博客作业教学数据分析系统(201521123084 林正晟)
#课程设计--博客作业教学数据分析系统(201521123084 林正晟) 1.团队课程设计博客链接 博客作业教学数据分析系统 2.个人负责模块或任务说明 学生登陆界面的前端实现和与数据库的连接 学生 ...
- Java课程设计——博客作业教学数据分析系统(201521123082 黄华林)
Java课程设计--博客作业教学数据分析系统(201521123082 黄华林) 一.团队课程设计博客链接 博客作业教学数据分析系统(From:网络五条狗) 二.个人负责模块或任务说明 1.网络爬虫 ...
- java课程设计--We Talk(201521123061)
java课程设计--We Talk(201521123061) 团队博客链接:http://www.cnblogs.com/slickghost/ 数据库 一.通过Dao模式建立与数据库的连接 1.数 ...
随机推荐
- Kotlin 初窥门径[1]:基础概念
Kotlin 是由 JetBrains 开发的基于JVM的语言.JetBrains 因为创造了一个强大的Java开发 IDE(Intellij) 而被大家所熟知.Android Studio 就是基于 ...
- Android App 压力测试 monkeyrunner
Android App 压力测试 第一部分 背景 1. 为什么要开展压力测试? 2. 什么时候开展压力测试?第二部分 理论 1. 手工测试场景 2. 自动测试创建 3. Monkey工具 4. ADB ...
- .Net之用户控件笔记
前端初始化: 记录点:不需要写jquery的onload,只需要在<script></script>里面直接调用 <script type="text/java ...
- java多线程基础(synchronize关键字)
[toc] 基础知识 ---- 线程:进程(process)就是一块包含了某些资源的内存区域.操作系统利用进程把它的工作划分为一些功能单元. 线程:进程中所包含的一个或多个执行单元称为线程(threa ...
- .Net Framework下对Dapper二次封装迁移到.Net Core2.0遇到的问题以及对Dapper的封装介绍
今天成功把.Net Framework下使用Dapper进行封装的ORM成功迁移到.Net Core 2.0上,在迁移的过程中也遇到一些很有意思的问题,值得和大家分享一下.下面我会还原迁移的每一个过程 ...
- 【Centos7 GRUB】修改开机等待时间
centos7与之前版本不同,在/boot/grub/下没有 grub.conf文件,但在/etc/grub2/grub.cfg可找到帮助信息 [root@za default]# cat /boot ...
- centos下搭建多项目svn服务器
svn是多人协作开发中的利器,是一个开放源代码的版本控制系统. 相比与git,他的操作更加简单,windows下有优秀的图形界面,并且支持的文件类型比较多. 本文讲述如何在linux下搭建一个svn服 ...
- VS2015 安装nuget离线包nupkg文件
最近在做项目进度管理时,想通过安装net.sf.mpxj-for-csharp包读取.mpp格式文件,通过Nuget在线安装时,出现以下情况,无法安装,故开启离线安装道路. 离线安装步骤如下: 一.下 ...
- html js文字左右滚动插件
自己写过很多插件,但都是直接嵌入在了工程里,从来没有拿出来单独封装成一个文件过,这是第一次,希望是一个良好的开端. 一个文字过长而可以左右滚动的插件 <!DOCTYPE html> < ...
- Python包管理工具和多版本环境管理
1. Python包管理工具 在安装Python包的过程中,经常涉及到distutils.setuptools.distribute.setup.py.easy_install.easy_instal ...