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

    java五子棋报告全程完整版.docx

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

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

    java五子棋报告全程完整版.docx

    1、java五子棋报告全程完整版下面的源代码分为4个文件; (1)chessClient.java:客户端主程序。 (2)chessInterface.java:客户端的界面。 (3)chessPad.java:棋盘的绘制。 (4)chessServer.java:服务器端。 可同时容纳50个人同时在线下棋,聊天。 /* 1.chessClient.java */ import java.awt.*; import java.awt.event.*; import java.io.*; import .*; import java.util.*; class clientThread extend

    2、s Thread chessClient chessclient; clientThread(chessClient chessclient) this.chessclient=chessclient; public void acceptMessage(String recMessage) if(recMessage.startsWith(/userlist ) StringTokenizer userToken=new StringTokenizer(recMessage, ); int userNumber=0; chessclient.userpad.userList.removeAl

    3、l(); chessclient.inputpad.userChoice.removeAll(); chessclient.inputpad.userChoice.addItem(所有人); while(userToken.hasMoreTokens() String user=(String)userToken.nextToken( ); if(userNumber0 & !user.startsWith(inchess) chessclient.userpad.userList.add(user); chessclient.inputpad.userChoice.addItem(user)

    4、; userNumber+; chessclient.inputpad.userChoice.select(所有人); else if(recMessage.startsWith(/yourname ) chessclient.chessClientName=recMessage.substring(10); chessclient.setTitle(Java五子棋客户端 +用户名:+chessclient.chessClientName); else if(recMessage.equals(/reject) try chessclient.chesspad.statusText.setTe

    5、xt(不能加入游戏); chessclient.controlpad.cancelGameButton.setEnabled(false); chessclient.controlpad.joinGameButton.setEnabled(true); chessclient.controlpad.creatGameButton.setEnabled(true); catch(Exception ef) chessclient.chatpad.chatLineArea.setText(chessclient.chesspad.chessSocket.close无法关闭); chessclien

    6、t.controlpad.joinGameButton.setEnabled(true); else if(recMessage.startsWith(/peer ) chessclient.chesspad.chessPeerName=recMessage.substring(6); if(chessclient.isServer) chessclient.chesspad.chessColor=1; chessclient.chesspad.isMouseEnabled=true; chessclient.chesspad.statusText.setText(请黑棋下子); else i

    7、f(chessclient.isClient) chessclient.chesspad.chessColor=-1; chessclient.chesspad.statusText.setText(已加入游戏,等待对方下子.); else if(recMessage.equals(/youwin) chessclient.isOnChess=false; chessclient.chesspad.chessVictory(chessclient.chesspad.chessColor); chessclient.chesspad.statusText.setText(对方退出,请点放弃游戏退

    8、出连接); chessclient.chesspad.isMouseEnabled=false; else if(recMessage.equals(/OK) chessclient.chesspad.statusText.setText(创建游戏成功,等待别人加入.); else if(recMessage.equals(/error) chessclient.chatpad.chatLineArea.append(传输错误:请退出程序,重新加入 n); else chessclient.chatpad.chatLineArea.append(recMessage+n); chessclie

    9、nt.chatpad.chatLineArea.setCaretPosition( chessclient.chatpad.chatLineArea.getText().length(); public void run() String message=; try while(true) message=chessclient.in.readUTF(); acceptMessage(message); catch(IOException es) public class chessClient extends Frame implements ActionListener,KeyListen

    10、er userPad userpad=new userPad(); chatPad chatpad=new chatPad(); controlPad controlpad=new controlPad(); chessPad chesspad=new chessPad(); inputPad inputpad=new inputPad(); Socket chatSocket; DataInputStream in; DataOutputStream out; String chessClientName=null; String host=null; int port=4331; bool

    11、ean isOnChat=false; /在聊天? boolean isOnChess=false; /在下棋? boolean isGameConnected=false; /下棋的客户端连接? boolean isServer=false; /如果是下棋的主机 boolean isClient=false; /如果是下棋的客户端 Panel southPanel=new Panel(); Panel northPanel=new Panel(); Panel centerPanel=new Panel(); Panel westPanel=new Panel(); Panel eastPa

    12、nel=new Panel(); chessClient() super(Java五子棋客户端); setLayout(new BorderLayout(); host=controlpad.inputIP.getText(); westPanel.setLayout(new BorderLayout(); westPanel.add(userpad,BorderLayout.NORTH); westPanel.add(chatpad,BorderLayout.CENTER); westPanel.setBackground(Color.pink); inputpad.inputwords.a

    13、ddKeyListener(this); chesspad.host=controlpad.inputIP.getText(); centerPanel.add(chesspad,BorderLayout.CENTER); centerPanel.add(inputpad,BorderLayout.SOUTH); centerPanel.setBackground(Color.pink); controlpad.connectButton.addActionListener(this); controlpad.creatGameButton.addActionListener(this); c

    14、ontrolpad.joinGameButton.addActionListener(this); controlpad.cancelGameButton.addActionListener(this); controlpad.exitGameButton.addActionListener(this); controlpad.creatGameButton.setEnabled(false); controlpad.joinGameButton.setEnabled(false); controlpad.cancelGameButton.setEnabled(false); southPan

    15、el.add(controlpad,BorderLayout.CENTER); southPanel.setBackground(Color.pink); addWindowListener(new WindowAdapter() public void windowClosing(WindowEvent e) if(isOnChat) try chatSocket.close(); catch(Exception ed) if(isOnChess | isGameConnected) try chesspad.chessSocket.close(); catch(Exception ee)

    16、System.exit(0); public void windowActivated(WindowEvent ea) ); add(westPanel,BorderLayout.WEST); add(centerPanel,BorderLayout.CENTER); add(southPanel,BorderLayout.SOUTH); pack(); setSize(670,548); setVisible(true); setResizable(false); validate(); public boolean connectServer(String serverIP,int ser

    17、verPort) throws Exception try chatSocket=new Socket(serverIP,serverPort); in=new DataInputStream(chatSocket.getInputStream(); out=new DataOutputStream(chatSocket.getOutputStream(); clientThread clientthread=new clientThread(this); clientthread.start(); isOnChat=true; return true; catch(IOException e

    18、x) chatpad.chatLineArea.setText(chessClient:connectServer:无法连接,建议重新启动程序 n); return false; public void actionPerformed(ActionEvent e) if(e.getSource()=controlpad.connectButton) host=chesspad.host=controlpad.inputIP.getText(); try if(connectServer(host,port) chatpad.chatLineArea.setText(); controlpad.

    19、connectButton.setEnabled(false); controlpad.creatGameButton.setEnabled(true); controlpad.joinGameButton.setEnabled(true); chesspad.statusText.setText(连接成功,请创建游戏或加入游戏); catch(Exception ei) chatpad.chatLineArea.setText(controlpad.connectButton:无法连接,建议重新启动程序 n); if(e.getSource()=controlpad.exitGameButt

    20、on) if(isOnChat) try chatSocket.close(); catch(Exception ed) if(isOnChess | isGameConnected) try chesspad.chessSocket.close(); catch(Exception ee) System.exit(0); if(e.getSource()=controlpad.joinGameButton) String selectedUser=userpad.userList.getSelectedItem(); if(selectedUser=null | selectedUser.s

    21、tartsWith(inchess) | selectedUser.equals(chessClientName) chesspad.statusText.setText(必须先选定一个有效用户); else try if(!isGameConnected) if(chesspad.connectServer(chesspad.host,chesspad.port) isGameConnected=true; isOnChess=true; isClient=true; controlpad.creatGameButton.setEnabled(false); controlpad.joinG

    22、ameButton.setEnabled(false); controlpad.cancelGameButton.setEnabled(true); chesspad.chessthread.sendMessage(/joingame +userpad.userList.getSelectedItem()+ +chessClientName); else isOnChess=true; isClient=true; controlpad.creatGameButton.setEnabled(false); controlpad.joinGameButton.setEnabled(false);

    23、 controlpad.cancelGameButton.setEnabled(true); chesspad.chessthread.sendMessage(/joingame +userpad.userList.getSelectedItem()+ +chessClientName); catch(Exception ee) isGameConnected=false; isOnChess=false; isClient=false; controlpad.creatGameButton.setEnabled(true); controlpad.joinGameButton.setEnab

    24、led(true); controlpad.cancelGameButton.setEnabled(false); chatpad.chatLineArea.setText(chesspad.connectServer无法连接 n+ee); if(e.getSource()=controlpad.creatGameButton) try if(!isGameConnected) if(chesspad.connectServer(chesspad.host,chesspad.port) isGameConnected=true; isOnChess=true; isServer=true; c

    25、ontrolpad.creatGameButton.setEnabled(false); controlpad.joinGameButton.setEnabled(false); controlpad.cancelGameButton.setEnabled(true); chesspad.chessthread.sendMessage(/creatgame +inchess+chessClientName); else isOnChess=true; isServer=true; controlpad.creatGameButton.setEnabled(false); controlpad.

    26、joinGameButton.setEnabled(false); controlpad.cancelGameButton.setEnabled(true); chesspad.chessthread.sendMessage(/creatgame +inchess+chessClientName); catch(Exception ec) isGameConnected=false; isOnChess=false; isServer=false; controlpad.creatGameButton.setEnabled(true); controlpad.joinGameButton.se

    27、tEnabled(true); controlpad.cancelGameButton.setEnabled(false); ec.printStackTrace(); chatpad.chatLineArea.setText(chesspad.connectServer无法连接 n+ec); if(e.getSource()=controlpad.cancelGameButton) if(isOnChess) chesspad.chessthread.sendMessage(/giveup +chessClientName); chesspad.chessVictory(-1*chesspa

    28、d.chessColor); controlpad.creatGameButton.setEnabled(true); controlpad.joinGameButton.setEnabled(true); controlpad.cancelGameButton.setEnabled(false); chesspad.statusText.setText(请建立游戏或者加入游戏); if(!isOnChess) controlpad.creatGameButton.setEnabled(true); controlpad.joinGameButton.setEnabled(true); controlpad.cancelGameButton.setEnabled(false); chesspad.statusText.setText(请建立游戏或者加入游戏); isClient=isServer=false; public void keyPressed(KeyEvent e) TextField inputWo


    注意事项

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

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




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

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

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


    收起
    展开