社区
Eclipse
帖子详情
有精通socket通信的大神吗?求助!!!!!
钱某
2017-05-25 05:31:35
我用java swing做了一个游戏在Eclipse里面运行,想实现一个玩家交流功能,我编写好了双向通信的代码,运行ok的,再把这个方法添加到游戏的“聊天室”按钮上,
问题来了
:通过游戏聊天室按钮点击,出现聊天框之后输入不进去文字,也关闭不了窗口,不知道怎么回事。ps(本来单独运行游戏可以关闭窗口,点击任何界面上的按钮;单独运行聊天框也可以点击关闭按钮并且聊天,但是两个一组合起来就不行了,游戏界面按钮全部点不到,也不能聊天,不能关闭)
新人求助!!!
...全文
809
3
打赏
收藏
有精通socket通信的大神吗?求助!!!!!
我用java swing做了一个游戏在Eclipse里面运行,想实现一个玩家交流功能,我编写好了双向通信的代码,运行ok的,再把这个方法添加到游戏的“聊天室”按钮上,问题来了:通过游戏聊天室按钮点击,出现聊天框之后输入不进去文字,也关闭不了窗口,不知道怎么回事。ps(本来单独运行游戏可以关闭窗口,点击任何界面上的按钮;单独运行聊天框也可以点击关闭按钮并且聊天,但是两个一组合起来就不行了,游戏界面按钮全部点不到,也不能聊天,不能关闭) 新人求助!!!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
钱某
2018-01-23
打赏
举报
回复
谢谢了,问题已解决!
爱摸鱼de老邪
2017-05-25
打赏
举报
回复
跟socket通信无关,你把所有的事情都放在Swing线程里去做了,耗时的操作会使Swing界面“假死”的,尤其socket是一直在监听消息,那个while(true)循环会一直占用Swing线程的。在Java中,逻辑处理要放在后台线程,Swing线程只做界面处理该做的事情。看看Swing线程模型相关的内容,你会处理好这个问题的。
钱某
2017-05-25
打赏
举报
回复
服务端源代码: public class MyTcp extends JFrame implements ActionListener{ static Label label=new Label("输入"); static JTextField tf=new JTextField(20); static JTextArea ta=new JTextArea(); Container cc; final JScrollPane panel= new JScrollPane(); Socket Client; ServerSocket server; InputStream DataIn; OutputStream DataOut; public MyTcp(){ super("这里是玩家一"); setSize(250,400); setLocation(835,200); panel.add(label); panel.add(tf); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); cc=this.getContentPane(); getContentPane().add(panel,BorderLayout.CENTER); panel.setViewportView(ta); tf.addActionListener(this); cc.add(tf,"South"); add("Center",ta); addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e){ System.exit(0); } }); //show(); setVisible(true); try{ server=new ServerSocket(5000); Client=server.accept(); ta.append("已经和客户端建立连接"+Client.getInetAddress().getHostName()+"\n\n"); DataIn=Client.getInputStream(); DataOut=Client.getOutputStream(); }catch(IOException ioe){ //ioe.printStackTrace(); } while(true){ try{ byte buff[]=new byte[512]; DataIn.read(buff); String str=new String(buff); ta.append("玩家二:"+str+"\n"); }catch(IOException ioe){ //ioe.printStackTrace(); } } } public static void main(String[] args) { MyTcp tcp=new MyTcp(); } @Override public void actionPerformed(ActionEvent e) { // TODO Auto-generated method stub try{ String str=new String(tf.getText()); byte buf[]=str.getBytes(); tf.setText(""); DataOut.write(buf); ta.append("玩家一:"+str+"\n"); }catch(IOException ioe){ //ioe.printStackTrace(); } } }
socket
通信
简介
“一切皆
Socket
!” 话虽些许夸张,但是事实也是,现在的网络编程几乎都是用的
socket
。 ——有感于实际编程和开源项目研究。 我们深谙信息交流的价值,那网络中进程之间如何
通信
,如我们每天...
解决报错:m ERR! code ERR_
SOCKET
_TIMEOUT npm ERR! network
Socket
timeout npm ERR! network
解决报错:m ERR! code ERR_
SOCKET
_TIMEOUT npm ERR! network
Socket
timeout npm ERR! network
npm ERR! code ERR_
SOCKET
_TIMEOUT npm ERR! network
Socket
timeout
npm ERR! code ERR_
SOCKET
_TIMEOUT npm ERR! network
Socket
timeout
Socket
通信
原理和实践
我们深谙信息交流的价值,那网络中进程之间如何
通信
,如我们每天打开...
socket
的类型有哪些?还有
socket
的基本函数,这些都是本文想介绍的。本文的主要内容如下: 1、网络中进程之间如何
通信
? 2、
Socket
是什么?
持续请求/
socket
.io/?EIO=3&transport=polling&t=N8HrzIR
项目基本介绍:使用React,webpack,
socket
.io-client, Node.js, Express,
socket
.io 等技术,采用前后端分离开发。 实现项目中的聊天室时遇到报错,一直请求下面的连接: GEThttp://localhost:3030/
socket
.io/?...
Eclipse
58,453
社区成员
49,451
社区内容
发帖
与我相关
我的任务
Eclipse
Java Eclipse
复制链接
扫一扫
分享
社区描述
Java Eclipse
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章