欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    java课程设计报告五子棋Word下载.docx

    • 资源ID:8116981       资源大小:186.40KB        全文页数:34页
    • 资源格式: DOCX        下载积分:3金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    java课程设计报告五子棋Word下载.docx

    1、 public void init() ckbHB0=new Checkbox(执白,ckgHB,false); ckbHB1=new Checkbox(执黑 ckbHB2=new Checkbox(观看,ckgHB, false); C.鼠标棋子胡相应触发事件public void mouseClicked(MouseEvent 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%2

    2、0 y1+=10; x1=x1/20*20; y1=y1/20*20; set_Qizi(x1,y1); m*=(-1);d.按钮的触发事件 public void actionPerformed(ActionEvent e) if (e.getSource()=b1) Game_start(); else Game_re(); if(e.getSource()=exist) lblWin.setText(Get_qizi_color(color_Qizi)+输了! intGame_Start=0; 2.编写一个功能判断落子的位置及画出相应的黑白棋子public void set_Qizi(i

    3、nt x,int y) /落子 if (intGame_Start=0) /判断游戏未开始 if (intGame_Bodyx/20y/20!=0) if (color_Qizi=1)/判断黑子还是白子 g.setColor(Color.black); color_Qizi=0; g.setColor(Color.white); color_Qizi=1; g.fillOval(x-10,y-10,20,20); intGame_Bodyx/20y/20=color_Qizi+1;3.判断胜负if (Game_win_1(x/20,y/20) /判断输赢1赢了! if (Game_win_2(

    4、x/20,y/20) /判断输赢2 if (Game_win_3(x/20,y/20) /判断输赢3 if (Game_win_4(x/20,y/20) /判断输赢4 4添加用户聊天功能NetchatClient chat=new NetchatClient();chat.frame();chat.setVisible(true);三 具体实现3.1创建棋盘类Public class WcyChess extends Applet implements ActionListener,MouseListener,MouseMotionListener,ItemListener int color

    5、_Qizi=0;/旗子的颜色标识 0:白子 1:黑子 int intGame_Start=0;/游戏开始标志 0未开始 1游戏中 int intGame_Body=new int1616; /设置棋盘棋子状态 int m=-1; Button b1=new Button( CheckboxGroup ckgHB=new CheckboxGroup(); NetchatClient chat=new NetchatClient(); setLayout(null); addMouseListener(this); add(b1); b1.setBounds(330,50,80,30); b1.a

    6、ddActionListener(this); add(b2); b2.setBounds(330,90,80,30); b2.addActionListener(this); ckbHB0.setBounds(320,20,60,30); ckbHB1.setBounds(380,20,60,30); add(ckbHB0); add(ckbHB1); add(ckbHB2); ckbHB0.addItemListener(this); ckbHB1.addItemListener(this); add(lblWin); lblWin.setBounds(330,180,80,30); lb

    7、lWin.setBackground(Color.red); lblWin.setText(胜利者!/没有显示? ckbHB2.setBounds(440, 20,60, 30); add(exist); exist.setBounds(330,130,80,30); exist.addActionListener(this);/ add(chat);chat.setBounds(20, 500, 300, 300); chat.frame(); chat.setVisible(true); Game_start_csh(); setSize(500,600); setVisible(true

    8、); public void itemStateChanged(ItemEvent e) if (ckbHB0.getState() /选择黑子还是白子 public void mousePressed(MouseEvent e) public void mouseClicked(MouseEvent e) y1+=10; public void actionPerformed(ActionEvent e) else public void mouseEntered(MouseEvent e) public void mouseExited(MouseEvent e) public void

    9、mouseReleased(MouseEvent e) public void mouseDragged(MouseEvent e) public void mouseMoved(MouseEvent e) public void paint(Graphics g) draw_qipan(g);3.2判断输赢功能实现if (Game_win_1(x/20,y/20) /判断输赢1 if (Game_win_2(x/20,y/20) /判断输赢2/判断输赢程序实现在详细过程 public boolean Game_win_1(int x,int y) /横向判断输赢 int x1,y1,t=1;

    10、 x1=x; y1=y; for (int i=1;5 ;i+ ) if (x115) break; if (intGame_Bodyx1+iy1=intGame_Bodyxy) t+=1; elsei+ ) if (x14) return true; return false; public boolean Game_win_2(int x,int y) /纵向判断输赢15) if (intGame_Bodyx1y1+i=intGame_Bodyxy)1) if(intGame_Bodyx1y1-i=intGame_Bodyxy) public boolean Game_win_3(int

    11、x,int y) /左斜判断输赢 if (intGame_Bodyx1+iy1-i=intGame_Bodyxy) if(intGame_Bodyx1-iy1+i=intGame_Bodyxy) public boolean Game_win_4(int x,int y) /左斜判断输赢 if (intGame_Bodyx1+iy1+i=intGame_Bodyxy) else 1) if(intGame_Bodyx1-iy1-i=intGame_Bodyxy) 4) 3.3实现聊天功能类package NetchatClient;import java.awt.*;import java.a

    12、wt.event.*;import .*;import java.io.*;import javax.swing.*;public class NetchatClient extends Frame Frame x=new Frame(liaotianchengxu TextField tf=new TextField(); TextArea ta=new TextArea(); Socket s=null; DataOutputStream dos=null; public static void main(String args) new NetchatClient().frame();

    13、public void frame() System.out.println(frame() setLocation(20, 400); setSize(300,300); add(tf,BorderLayout.SOUTH); add(ta,BorderLayout.NORTH); pack(); setVisible(true); connect(); this.addWindowListener(new WindowAdapter() public void windowClosing(WindowEvent arg0) cconnect(); System.exit(0); ); ad

    14、dWindowListener (new WindowAdapter()/窗口适配器 public void windowClosing(WindowEvent e) System.exit(0);/程序退出 ); tf.addActionListener(new nclistener(); public void connect() connnect(). try s=new Socket(127.0.0.1,8888);/设置客户 端的IP和端口 dos=new DataOutputStream(s.getOutputStream(); catch (UnknownHostExceptio

    15、n e) e.printStackTrace(); catch (IOException e) public void cconnect() dos.close(); s.close(); public class nclistener implements ActionListener String st=tf.getText(); ta.setText(st); tf.setText( dos.writeUTF(st); dos.flush(); catch (IOException e1) e1.printStackTrace(); 四 测试结果4.1 进入游戏的界面分析:游戏开始的界面

    16、有三个选择项,用户可以选择相应的角色,选择完毕后点击开始进入游戏。用户也可以在下面的聊天框中进行聊天。4.2选择角色,点击开始,开始下棋首先达到五个棋子连在一块的赢了,并在红色区域显示谁赢了!4.3下完后点击重新开始下完一盘后游戏停止,点击重新开始,界面回到初始界面,选择角色继续游戏.4.4游戏过程中退出,自动判输在下棋的过程当中谁中途退出,即点击退出,系统自动判断谁输4.5改进想法这个系统基本上实现了要求但是在有些方面还不够完善。1.观看角色点击后不会出发什么事件,虽然观看者并不需要做什么但是点击之后并没有发生任何反应总感觉缺点什么。想加个什么功能,但是又不知道加什么才不至于画蛇添足。2.问

    17、题比较大的可能是聊天功能了,本来聊天面板应该和棋盘面板在同一个面板上面,但是聊天功能的程序是写在了另一个类里,并且那个类是继承了Frame类的,是一个Application程序,而棋盘是一个Applet程序,所以当我添加这个类到Applet面板上并不能显示 ,所以我就打包那个NetchatClient 类,在棋盘类中加载这个类,并调用该类的方法才实现了聊天功能。3.聊天功能本身也还不够完善,因为每次发送聊天的内容后都会覆盖掉原来的内容,这使得用户不能很直观的看到聊天的内容。但是在修改的过程中出现了许多的问题,所以也就将就者先用了。五 设计体会与小结 这个课设题对我来说有一定的挑战性,因为我自己也不知道自己到底学到了一个什么样的境界。但可以肯定,这个课设题的要求绝对在我的能力范围以上。之所以选择这个题目是想逼着自己去查更多的资料,学到更多的东西。结果也确实是这样的,我在这次课设中学到了不少东西,也理解了许多原来不理解的东西。尽管这个系统做的并不是那么的完善。对于Java中的引用,初始化类等,开始我并不是非常的理解,知道就这么做就能实现相应的功能了,并没有很深刻的去理解它为什么要这么做。但是真正的要用Java去做一个东西不理解它是不行的,而且其间这课设涉及到了Java 中的绝大多数的知识点,如Java图形用户界面设计、Java的异常处理机制、Java


    注意事项

    本文(java课程设计报告五子棋Word下载.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开