五子棋JAVA语言课程设计报告

上传人:飞*** 文档编号:30463335 上传时间:2018-01-29 格式:DOC 页数:22 大小:320.50KB
返回 下载 相关 举报
五子棋JAVA语言课程设计报告_第1页
第1页 / 共22页
五子棋JAVA语言课程设计报告_第2页
第2页 / 共22页
五子棋JAVA语言课程设计报告_第3页
第3页 / 共22页
五子棋JAVA语言课程设计报告_第4页
第4页 / 共22页
五子棋JAVA语言课程设计报告_第5页
第5页 / 共22页
点击查看更多>>
资源描述

《五子棋JAVA语言课程设计报告》由会员分享,可在线阅读,更多相关《五子棋JAVA语言课程设计报告(22页珍藏版)》请在金锄头文库上搜索。

1、封面Java 语言程序设计课程设计报告分 院: 电 信 分 院 班 级: _电子商务 1 班_ 姓 名: 何芳林 学 号: 20100210460123 指导教师: 吴军良 课设时间: 2011-12-20 至 2011-12-31 10 电商 1 班 何芳林 Java 课程设计报告1二 O 一一 年 十 二月 二十 日10 电商 1 班 何芳林 Java 课程设计报告2目 录一、设计要求.2二、设计步骤.22.1 程序流程图.22.2 程序的功能分配.3三、设计正文.63.1 创建棋盘类.63.2 判断输赢功能实现.93.3 测试结果.9四、心得体会.12五、参考文献.12附录 (源代码).

2、1310 电商 1 班 何芳林 Java 课程设计报告3一、课程设计要求设计一个 1515 围棋棋盘,由两玩家交替进行对战,并可以实现以下功能:1.选择落子的先后顺序 2.重置棋盘3.刷新重新开始4.退出提示并且规定退出者判为负,但退出过程中要有提示。以防不小心点错了。最后判断某一方是否为五子连珠。实现一个简单的多用户五子棋的游戏程序,包括如下两个界面(1)选择对弈桌(执黑、执白) 。(2)在游戏界面,有开始,退出(游戏未结束、点退出自动判负) ;二、设计步骤2.1 程序流程图10 电商 1 班 何芳林 Java 课程设计报告42.2 程序的功能分配a. 棋盘的绘制public void dr

3、aw_qipan(Graphics G) /画棋盘 15*15G.setColor(Color.lightGray);G.fill3DRect(10,10,300,300,true);G.setColor(Color.black);for(int i=1;i300 | e.getY()300) return;if (x1%2010) x1+=10;if(y1%2010) y1+=10;x1=x1/20*20;y1=y1/20*20;set_Qizi(x1,y1);m*=(-1);10 电商 1 班 何芳林 Java 课程设计报告5d. 按钮的触发事件public void actionPerf

4、ormed(ActionEvent e) Graphics g=getGraphics();if (e.getSource()=b1) Game_start();elseGame_re();if(e.getSource()=exist)Game_re();lblWin.setText(Get_qizi_color(color_Qizi)+输了!);intGame_Start=0; e. 判断落子的位置及画出相应的黑白棋子public void set_Qizi(int x,int y) /落子if (intGame_Start=0) /判断游戏未开始return;if (intGame_Bod

5、yx/20y/20!=0) return;Graphics g=getGraphics();if (color_Qizi=1)/判断黑子还是白子g.setColor(Color.black);color_Qizi=0;elseg.setColor(Color.white);color_Qizi=1;g.fillOval(x-10,y-10,20,20);intGame_Bodyx/20y/20=color_Qizi+1;f. 判断胜负if (Game_win_1(x/20,y/20) /判断输赢 1lblWin.setText(Get_qizi_color(color_Qizi)+赢了!);i

6、ntGame_Start=0;if (Game_win_2(x/20,y/20) /判断输赢 2lblWin.setText(Get_qizi_color(color_Qizi)+赢了!);10 电商 1 班 何芳林 Java 课程设计报告6intGame_Start=0;if (Game_win_3(x/20,y/20) /判断输赢 3lblWin.setText(Get_qizi_color(color_Qizi)+赢了!);intGame_Start=0;if (Game_win_4(x/20,y/20) /判断输赢 4lblWin.setText(Get_qizi_color(colo

7、r_Qizi)+赢了!);intGame_Start=0; 10 电商 1 班 何芳林 Java 课程设计报告7三、设计正文3.1 创建棋盘类Public class WcyChess extends Applet implements ActionListener,MouseListener,MouseMotionListener,ItemListenerint color_Qizi=0;/旗子的颜色标识 0:白子 1:黑子int intGame_Start=0;/游戏开始标志 0 未开始 1 游戏中int intGame_Body=new int1616; /设置棋盘棋子状态int m=-

8、1;Button b1=new Button(开始);Button b2=new Button(重置游戏);Label lblWin=new Label( );Checkbox ckbHB=new Checkbox3;Button exist = new Button(退出); CheckboxGroup ckgHB=new CheckboxGroup();NetchatClient chat=new NetchatClient();public void init()setLayout(null);addMouseListener(this);add(b1);b1.setBounds(330

9、,50,80,30);b1.addActionListener(this);add(b2);b2.setBounds(330,90,80,30);b2.addActionListener(this);ckbHB0=new Checkbox(执白,ckgHB,false);ckbHB0.setBounds(320,20,60,30);ckbHB1=new Checkbox(执黑,ckgHB,false);ckbHB1.setBounds(380,20,60,30);ckbHB2=new Checkbox(观看,ckgHB, false);add(ckbHB0);add(ckbHB1);add(c

10、kbHB2);ckbHB0.addItemListener(this);ckbHB1.addItemListener(this);add(lblWin);lblWin.setBounds(330,180,80,30);lblWin.setBackground(Color.red);lblWin.setText(胜利者!);/没有显示?ckbHB2.setBounds(440, 20,60, 30);add(exist);exist.setBounds(330,130,80,30);10 电商 1 班 何芳林 Java 课程设计报告8exist.addActionListener(this);/

11、 add(chat);chat.setBounds(20, 500, 300, 300);chat.frame();chat.setVisible(true);Game_start_csh();setSize(500,600); setVisible(true);public void itemStateChanged(ItemEvent e) if (ckbHB0.getState() /选择黑子还是白子color_Qizi=0;elsecolor_Qizi=1;public void mousePressed(MouseEvent e)public void mouseClicked(Mo

12、useEvent e) Graphics g=getGraphics();int x1,y1;x1=e.getX();y1=e.getY();if (e.getX()300 | e.getY()300) return;if (x1%2010) x1+=10;if(y1%2010) y1+=10;x1=x1/20*20;y1=y1/20*20;set_Qizi(x1,y1);m*=(-1);public void actionPerformed(ActionEvent e) Graphics g=getGraphics();if (e.getSource()=b1) Game_start();e

13、lse Game_re();10 电商 1 班 何芳林 Java 课程设计报告9if(e.getSource()=exist)Game_re();lblWin.setText(Get_qizi_color(color_Qizi)+输了!);intGame_Start=0;public void mouseEntered(MouseEvent e)public void mouseExited(MouseEvent e)public void mouseReleased(MouseEvent e)public void mouseDragged(MouseEvent e)public void

14、mouseMoved(MouseEvent e)public void paint(Graphics g) draw_qipan(g);3.2 判断输赢功能实现if (Game_win_1(x/20,y/20) /判断输赢 1lblWin.setText(Get_qizi_color(color_Qizi)+赢了!);intGame_Start=0;if (Game_win_2(x/20,y/20) /判断输赢 2lblWin.setText(Get_qizi_color(color_Qizi)+赢了!);intGame_Start=0;if (Game_win_3(x/20,y/20) /判断输赢 3lblWin.setText(Get_qizi_color(color_Qizi)+赢了!);intGame_Start=0;if (Game_win_4(x/20,y/20) /判断输赢 4lblWin.setText(Get_qizi_color(color_Qizi)+赢了!);intGame_Start=0;10 电商 1 班 何芳林 Java 课程设计报告103.3 测试结果a. 进入游戏界面游戏开始的界面有三个选

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号